summaryrefslogtreecommitdiffstats
path: root/mobile/android/fenix/app
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 05:35:29 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 05:35:29 +0000
commit59203c63bb777a3bacec32fb8830fba33540e809 (patch)
tree58298e711c0ff0575818c30485b44a2f21bf28a0 /mobile/android/fenix/app
parentAdding upstream version 126.0.1. (diff)
downloadfirefox-59203c63bb777a3bacec32fb8830fba33540e809.tar.xz
firefox-59203c63bb777a3bacec32fb8830fba33540e809.zip
Adding upstream version 127.0.upstream/127.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'mobile/android/fenix/app')
-rw-r--r--mobile/android/fenix/app/build.gradle11
-rw-r--r--mobile/android/fenix/app/lint-baseline.xml49
-rw-r--r--mobile/android/fenix/app/messaging-fenix.fml.yaml7
-rw-r--r--mobile/android/fenix/app/metrics.yaml49
-rw-r--r--mobile/android/fenix/app/nimbus.fml.yaml27
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html24
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html20
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html38
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html20
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html34
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html14
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html14
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html27
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html16
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html23
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html60
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html68
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/password.html37
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html12
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html61
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html34
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html42
-rw-r--r--mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html68
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt10
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js18
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js17
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js26
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js15
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js15
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt13
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt10
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt2
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt2
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt11
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt2
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt2
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt13
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt2
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt49
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt2
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt9
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt6
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt4
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt20
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt3
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt8
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt2
-rw-r--r--mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt15
-rw-r--r--mobile/android/fenix/app/src/beta/res/xml/shortcuts.xml9
-rw-r--r--mobile/android/fenix/app/src/debug/res/xml/shortcuts.xml9
-rw-r--r--mobile/android/fenix/app/src/main/assets/highRiskErrorPages.js48
-rw-r--r--mobile/android/fenix/app/src/main/assets/high_risk_error_pages.html5
-rw-r--r--mobile/android/fenix/app/src/main/assets/lowMediumErrorPages.js212
-rw-r--r--mobile/android/fenix/app/src/main/assets/low_and_medium_risk_error_pages.html18
-rw-r--r--mobile/android/fenix/app/src/main/assets/shared_error_style.css1
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt7
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt7
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt39
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/OnLongPressedListener.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/OnBackLongPressedListener.kt)11
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/addons/AddonsManagementFragment.kt8
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt96
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt236
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/StandardSnackbarErrorBinding.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/SwipeGestureLayout.kt3
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/TabPreview.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/tabstrip/TabStripFeatureFlag.kt31
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt14
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Components.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NotificationManager.kt74
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppAction.kt16
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppState.kt6
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppStoreReducer.kt8
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCase.kt37
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/BrowserNavigationParams.kt18
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuAccessPoint.kt38
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuDialogFragment.kt253
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/ExtensionsSubmenu.kt101
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MainMenu.kt365
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuDialog.kt203
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuGroup.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuItem.kt202
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/SaveSubmenu.kt163
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/ToolsSubmenu.kt184
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MenuHeader.kt16
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MozillaAccountMenuButton.kt82
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/SubmenuHeader.kt94
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuDialogMiddleware.kt93
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuNavigationMiddleware.kt134
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuAction.kt97
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuState.kt27
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuStore.kt33
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarController.kt24
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt51
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarView.kt22
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt9
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarMenu.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/DismissibleItemBackground.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/Button.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/TextButton.kt16
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/list/ListItem.kt196
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/tabstray/DismissedTabBackground.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt6
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/tabs/TabTools.kt11
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/ui/DebugOverlay.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/downloads/StartDownloadDialog.kt11
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt21
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/AppState.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Bitmap.kt18
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Context.kt6
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Fragment.kt55
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/View.kt109
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt74
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt14
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenuView.kt17
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/ToolbarView.kt3
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistHandler.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistMiddleware.kt12
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/BookmarksFeature.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/RecentBookmarksFeature.kt)15
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/controller/BookmarksController.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/controller/RecentBookmarksController.kt)38
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/interactor/BookmarksInteractor.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/interactor/RecentBookmarksInteractor.kt)22
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/Bookmarks.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarks.kt)66
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksHeaderViewHolder.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksHeaderViewHolder.kt)16
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksMenuItem.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksMenuItem.kt)10
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksViewHolder.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksViewHolder.kt)29
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/collections/CollectionViewHolder.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/intent/OpenRecentlyClosedIntentProcessor.kt30
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt25
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlController.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlInteractor.kt20
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt12
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/PagerIndicator.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt9
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenu.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/edit/EditBookmarkFragment.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadFragment.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadItemMenu.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/historymetadata/HistoryMetadataGroupFragment.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/recentlyclosed/RecentlyClosedFragment.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/FenixMessageSurfaceId.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/MessagingFeature.kt7
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyContent.kt123
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyFooter.kt105
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyHeader.kt86
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyScaffold.kt67
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyBottomSheet.kt117
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyBottomSheetFragment.kt66
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyRequestPrompt.kt96
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/OnboardingFragment.kt11
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerStopDialogFragment.kt13
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerUtils.kt6
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt3
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt3
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/HomeSettingsFragment.kt6
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/PairFragment.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretSettingsFragment.kt3
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt10
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SupportUtils.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SyncDebugFragment.kt19
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/AccountProblemFragment.kt8
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/TurnOnSyncFragment.kt3
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/biometric/BiometricUtils.kt110
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/creditcards/view/CreditCardEditorView.kt8
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/AddLoginFragment.kt8
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/EditLoginFragment.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/SavedLoginsAuthFragment.kt121
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineMenu.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineShortcuts.kt19
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/SaveToPDFMiddleware.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/ReviewQualityCheckInfoCard.kt50
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsController.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsInteractor.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTray.kt43
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayController.kt11
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt20
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayInteractor.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/TabsTouchHelper.kt2
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/ext/SyncedDeviceTabs.kt41
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/inactivetabs/InactiveTabs.kt112
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsIntegration.kt9
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsList.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabs.kt)58
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListItem.kt18
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListSupportedFeature.kt12
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/viewholders/SyncedTabsPageViewHolder.kt1
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/theme/FirefoxTheme.kt167
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/DownloadIndicator.kt12
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettings.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettingsFragment.kt38
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsBottomSheet.kt6
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBinding.kt5
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBottomSheet.kt8
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogFragment.kt35
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogMiddleware.kt13
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationItemPreference.kt27
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreference.kt4
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreferenceFragment.kt14
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreference.kt31
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreferenceFragment.kt44
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteDialogPreferenceFragment.kt19
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteListItemPreference.kt12
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitePreferenceFragment.kt48
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitesPreference.kt (renamed from mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitePreference.kt)26
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitesPreferenceFragment.kt60
-rw-r--r--mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt23
-rw-r--r--mobile/android/fenix/app/src/main/res/drawable/microsurvey_success.xml81
-rw-r--r--mobile/android/fenix/app/src/main/res/layout/fragment_address_editor.xml2
-rw-r--r--mobile/android/fenix/app/src/main/res/layout/fragment_browser.xml4
-rw-r--r--mobile/android/fenix/app/src/main/res/layout/fragment_credit_card_editor.xml2
-rw-r--r--mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml88
-rw-r--r--mobile/android/fenix/app/src/main/res/raw/initial_experiments.json109
-rw-r--r--mobile/android/fenix/app/src/main/res/values-azb/strings.xml69
-rw-r--r--mobile/android/fenix/app/src/main/res/values-be/strings.xml234
-rw-r--r--mobile/android/fenix/app/src/main/res/values-bg/strings.xml174
-rw-r--r--mobile/android/fenix/app/src/main/res/values-br/strings.xml267
-rw-r--r--mobile/android/fenix/app/src/main/res/values-bs/strings.xml225
-rw-r--r--mobile/android/fenix/app/src/main/res/values-cak/strings.xml94
-rw-r--r--mobile/android/fenix/app/src/main/res/values-co/strings.xml6
-rw-r--r--mobile/android/fenix/app/src/main/res/values-cs/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-cy/strings.xml176
-rw-r--r--mobile/android/fenix/app/src/main/res/values-da/strings.xml193
-rw-r--r--mobile/android/fenix/app/src/main/res/values-de/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-dsb/strings.xml176
-rw-r--r--mobile/android/fenix/app/src/main/res/values-el/strings.xml178
-rw-r--r--mobile/android/fenix/app/src/main/res/values-en-rCA/strings.xml175
-rw-r--r--mobile/android/fenix/app/src/main/res/values-en-rGB/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-eo/strings.xml176
-rw-r--r--mobile/android/fenix/app/src/main/res/values-es-rAR/strings.xml176
-rw-r--r--mobile/android/fenix/app/src/main/res/values-es-rCL/strings.xml195
-rw-r--r--mobile/android/fenix/app/src/main/res/values-es-rES/strings.xml196
-rw-r--r--mobile/android/fenix/app/src/main/res/values-es/strings.xml196
-rw-r--r--mobile/android/fenix/app/src/main/res/values-eu/strings.xml221
-rw-r--r--mobile/android/fenix/app/src/main/res/values-fi/strings.xml178
-rw-r--r--mobile/android/fenix/app/src/main/res/values-fr/strings.xml175
-rw-r--r--mobile/android/fenix/app/src/main/res/values-fur/strings.xml175
-rw-r--r--mobile/android/fenix/app/src/main/res/values-fy-rNL/strings.xml178
-rw-r--r--mobile/android/fenix/app/src/main/res/values-gl/strings.xml173
-rw-r--r--mobile/android/fenix/app/src/main/res/values-gn/strings.xml178
-rw-r--r--mobile/android/fenix/app/src/main/res/values-hr/strings.xml147
-rw-r--r--mobile/android/fenix/app/src/main/res/values-hsb/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-hu/strings.xml67
-rw-r--r--mobile/android/fenix/app/src/main/res/values-hy-rAM/strings.xml197
-rw-r--r--mobile/android/fenix/app/src/main/res/values-ia/strings.xml179
-rw-r--r--mobile/android/fenix/app/src/main/res/values-is/strings.xml173
-rw-r--r--mobile/android/fenix/app/src/main/res/values-it/strings.xml176
-rw-r--r--mobile/android/fenix/app/src/main/res/values-iw/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-ja/strings.xml279
-rw-r--r--mobile/android/fenix/app/src/main/res/values-kab/strings.xml223
-rw-r--r--mobile/android/fenix/app/src/main/res/values-kk/strings.xml178
-rw-r--r--mobile/android/fenix/app/src/main/res/values-ko/strings.xml176
-rw-r--r--mobile/android/fenix/app/src/main/res/values-nb-rNO/strings.xml228
-rw-r--r--mobile/android/fenix/app/src/main/res/values-night/colors.xml28
-rw-r--r--mobile/android/fenix/app/src/main/res/values-nl/strings.xml178
-rw-r--r--mobile/android/fenix/app/src/main/res/values-nn-rNO/strings.xml346
-rw-r--r--mobile/android/fenix/app/src/main/res/values-oc/strings.xml202
-rw-r--r--mobile/android/fenix/app/src/main/res/values-pa-rIN/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-pl/strings.xml119
-rw-r--r--mobile/android/fenix/app/src/main/res/values-pt-rBR/strings.xml176
-rw-r--r--mobile/android/fenix/app/src/main/res/values-pt-rPT/strings.xml188
-rw-r--r--mobile/android/fenix/app/src/main/res/values-rm/strings.xml2
-rw-r--r--mobile/android/fenix/app/src/main/res/values-ru/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-sat/strings.xml317
-rw-r--r--mobile/android/fenix/app/src/main/res/values-sc/strings.xml313
-rw-r--r--mobile/android/fenix/app/src/main/res/values-si/strings.xml60
-rw-r--r--mobile/android/fenix/app/src/main/res/values-sk/strings.xml175
-rw-r--r--mobile/android/fenix/app/src/main/res/values-skr/strings.xml107
-rw-r--r--mobile/android/fenix/app/src/main/res/values-sl/strings.xml304
-rw-r--r--mobile/android/fenix/app/src/main/res/values-sq/strings.xml67
-rw-r--r--mobile/android/fenix/app/src/main/res/values-su/strings.xml631
-rw-r--r--mobile/android/fenix/app/src/main/res/values-sv-rSE/strings.xml176
-rw-r--r--mobile/android/fenix/app/src/main/res/values-tg/strings.xml179
-rw-r--r--mobile/android/fenix/app/src/main/res/values-tr/strings.xml175
-rw-r--r--mobile/android/fenix/app/src/main/res/values-ug/strings.xml173
-rw-r--r--mobile/android/fenix/app/src/main/res/values-uk/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-vi/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-zh-rCN/strings.xml177
-rw-r--r--mobile/android/fenix/app/src/main/res/values-zh-rTW/strings.xml178
-rw-r--r--mobile/android/fenix/app/src/main/res/values/attrs.xml2
-rw-r--r--mobile/android/fenix/app/src/main/res/values/colors.xml46
-rw-r--r--mobile/android/fenix/app/src/main/res/values/preference_keys.xml6
-rw-r--r--mobile/android/fenix/app/src/main/res/values/static_strings.xml6
-rw-r--r--mobile/android/fenix/app/src/main/res/values/strings.xml103
-rw-r--r--mobile/android/fenix/app/src/main/res/values/styles.xml16
-rw-r--r--mobile/android/fenix/app/src/main/res/xml/home_preferences.xml4
-rw-r--r--mobile/android/fenix/app/src/main/res/xml/preferences.xml6
-rw-r--r--mobile/android/fenix/app/src/main/res/xml/shortcuts.xml9
-rw-r--r--mobile/android/fenix/app/src/main/res/xml/sync_debug_preferences.xml9
-rw-r--r--mobile/android/fenix/app/src/nightly/res/xml/shortcuts.xml9
-rw-r--r--mobile/android/fenix/app/src/release/res/xml/shortcuts.xml9
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/FenixApplicationTest.kt23
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/BrowserFragmentTest.kt256
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/StandardSnackbarErrorBindingTest.kt2
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/TranslationsBindingTest.kt1
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/AppStoreTest.kt10
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCaseTest.kt34
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuAccessPointTest.kt22
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuDialogMiddlewareTest.kt206
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuNavigationMiddlewareTest.kt324
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuStoreTest.kt123
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/fake/FakeBookmarksStorage.kt104
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarControllerTest.kt4
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt13
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/BitmapTest.kt33
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/ViewTest.kt22
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/DefaultSessionControlControllerTest.kt29
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/HomeMenuViewTest.kt5
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/SessionControlInteractorTest.kt22
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistHandlerTest.kt6
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistMiddlewareTest.kt66
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/bookmarks/BookmarksFeatureTest.kt (renamed from mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentbookmarks/RecentBookmarksFeatureTest.kt)16
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/bookmarks/DefaultBookmarksControllerTest.kt (renamed from mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentbookmarks/DefaultRecentBookmarksControllerTest.kt)48
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/intent/OpenRecentlyClosedIntentProcessorTest.kt74
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentvisits/interactor/RecentVisitsInteractorTest.kt6
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/sessioncontrol/SessionControlViewTest.kt52
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenuTest.kt2
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/messaging/MessagingFeatureTest.kt5
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/search/toolbar/ToolbarViewTest.kt5
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/PreferenceBackedRadioButtonTest.kt1
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/creditcards/CreditCardEditorViewTest.kt6
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/share/SaveToPDFMiddlewareTest.kt26
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/sync/ext/SyncedDeviceTabsTest.kt60
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/tabstray/DefaultTabsTrayControllerTest.kt16
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogBindingTest.kt33
-rw-r--r--mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogMiddlewareTest.kt23
-rw-r--r--mobile/android/fenix/app/src/test/resources/robolectric.properties1
326 files changed, 13293 insertions, 8063 deletions
diff --git a/mobile/android/fenix/app/build.gradle b/mobile/android/fenix/app/build.gradle
index a3e5442372..196c4b6401 100644
--- a/mobile/android/fenix/app/build.gradle
+++ b/mobile/android/fenix/app/build.gradle
@@ -681,8 +681,8 @@ dependencies {
implementation FenixDependencies.androidx_core_splashscreen
implementation FenixDependencies.androidx_transition
implementation ComponentsDependencies.androidx_work_runtime
- implementation FenixDependencies.androidx_datastore
- implementation ComponentsDependencies.androidx_data_store_preferences
+ implementation ComponentsDependencies.androidx_datastore
+ implementation ComponentsDependencies.androidx_datastore_preferences
implementation FenixDependencies.protobuf_javalite
implementation ComponentsDependencies.google_material
@@ -894,15 +894,10 @@ if (gradle.hasProperty('localProperties.dependencySubstitutions.geckoviewTopsrcd
if (gradle.hasProperty('localProperties.dependencySubstitutions.geckoviewTopobjdir')) {
ext.topobjdir = gradle."localProperties.dependencySubstitutions.geckoviewTopobjdir"
}
- ext.topsrcdir = StringUtils.removeSuffix(gradle."localProperties.dependencySubstitutions.geckoviewTopsrcdir", File.separator)
+ ext.topsrcdir = gradle."localProperties.dependencySubstitutions.geckoviewTopsrcdir"
apply from: "${topsrcdir}/substitute-local-geckoview.gradle"
}
-if (gradle.hasProperty('localProperties.autoPublish.glean.dir')) {
- ext.gleanSrcDir = gradle."localProperties.autoPublish.glean.dir"
- apply from: "../${gleanSrcDir}/build-scripts/substitute-local-glean.gradle"
-}
-
android.applicationVariants.configureEach { variant ->
tasks.register("apkSize${variant.name.capitalize()}", ApkSizeTask) {
variantName = variant.name
diff --git a/mobile/android/fenix/app/lint-baseline.xml b/mobile/android/fenix/app/lint-baseline.xml
index c9eb994da1..11d01800db 100644
--- a/mobile/android/fenix/app/lint-baseline.xml
+++ b/mobile/android/fenix/app/lint-baseline.xml
@@ -157,28 +157,6 @@
<issue
id="UnusedAttribute"
- message="Attribute `shortcutLongLabel` is only used in API level 25 and higher (current min is 21)"
- errorLine1=" android:shortcutLongLabel=&quot;@string/home_screen_shortcut_open_new_tab_2&quot;>"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/debug/res/xml/shortcuts.xml"
- line="12"
- column="9"/>
- </issue>
-
- <issue
- id="UnusedAttribute"
- message="Attribute `shortcutLongLabel` is only used in API level 25 and higher (current min is 21)"
- errorLine1=" android:shortcutLongLabel=&quot;@string/home_screen_shortcut_open_new_tab_2&quot;>"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/res/xml/shortcuts.xml"
- line="12"
- column="9"/>
- </issue>
-
- <issue
- id="UnusedAttribute"
message="Attribute `shortcutId` is only used in API level 25 and higher (current min is 21)"
errorLine1=" android:shortcutId=&quot;open_new_private_tab&quot;"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
@@ -223,28 +201,6 @@
<issue
id="UnusedAttribute"
- message="Attribute `shortcutLongLabel` is only used in API level 25 and higher (current min is 21)"
- errorLine1=" android:shortcutLongLabel=&quot;@string/home_screen_shortcut_open_new_private_tab_2&quot;>"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/debug/res/xml/shortcuts.xml"
- line="23"
- column="9"/>
- </issue>
-
- <issue
- id="UnusedAttribute"
- message="Attribute `shortcutLongLabel` is only used in API level 25 and higher (current min is 21)"
- errorLine1=" android:shortcutLongLabel=&quot;@string/home_screen_shortcut_open_new_private_tab_2&quot;>"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/res/xml/shortcuts.xml"
- line="23"
- column="9"/>
- </issue>
-
- <issue
- id="UnusedAttribute"
message="Attribute `android:foreground` has no effect on API levels lower than 23 (current min is 21)"
errorLine1=" android:foreground=&quot;?android:selectableItemBackground&quot;>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
@@ -1370,4 +1326,9 @@
column="21"/>
</issue>
+ <issue id="UnusedResources"
+ message="The resource R.drawable.microsurvey_success appears to be unused">
+ <location file="src/main/res/drawable/microsurvey_success.xml" />
+ </issue>
+
</issues>
diff --git a/mobile/android/fenix/app/messaging-fenix.fml.yaml b/mobile/android/fenix/app/messaging-fenix.fml.yaml
index 07bc54fd4a..ac40a5e35b 100644
--- a/mobile/android/fenix/app/messaging-fenix.fml.yaml
+++ b/mobile/android/fenix/app/messaging-fenix.fml.yaml
@@ -44,6 +44,9 @@ import:
INACTIVE_4_DAYS: "'app_launched'|eventLastSeen('Days', 0) >= 4"
INACTIVE_5_DAYS: "'app_launched'|eventLastSeen('Days', 0) >= 5"
+ # Behavioral Targeting Events
+ RECENTLY_PRINTED: "'print_tapped'|eventLastSeen('Hours') <= 24"
+
# Has the user signed in the last 4 years
FXA_SIGNED_IN: "'sync_auth.sign_in'|eventLastSeen('Years', 0) <= 4"
FXA_NOT_SIGNED_IN: "'sync_auth.sign_in'|eventLastSeen('Years', 0) > 4"
@@ -94,10 +97,14 @@ import:
NOTIFICATION:
priority: 50
max-display-count: 1
+ MICRO_SURVEY:
+ priority: 50
+ max-display-count: 5
$$surfaces:
- homescreen
- notification
- survey
+ - microsurvey
- channel: developer
value:
diff --git a/mobile/android/fenix/app/metrics.yaml b/mobile/android/fenix/app/metrics.yaml
index 470186c2a5..a620eb4d39 100644
--- a/mobile/android/fenix/app/metrics.yaml
+++ b/mobile/android/fenix/app/metrics.yaml
@@ -868,11 +868,12 @@ translations:
A string containing the name of the item the user tapped. These items
include:
main_flow_toolbar, main_flow_browser, page_settings, global_settings,
- global_lang_settings, global_site_settings, downloads
+ global_lang_settings, global_site_settings, downloads, global_settings_from_preferences
type: string
bugs:
- https://bugzilla.mozilla.org/show_bug.cgi?id=1883968
- https://bugzilla.mozilla.org/show_bug.cgi?id=1886851
+ - https://bugzilla.mozilla.org/show_bug.cgi?id=1890838
data_reviews:
- https://bugzilla.mozilla.org/show_bug.cgi?id=1883968#c6
- https://bugzilla.mozilla.org/show_bug.cgi?id=1886851#c8
@@ -2826,11 +2827,11 @@ customize_home:
notification_emails:
- android-probes@mozilla.com
expires: never
- recently_saved:
+ bookmarks:
type: boolean
description: |
An indication of whether the recently
- saved section is enabled to be displayed
+ saved section is enabled to be displayed. This was previously customize_home.recently_saved.
send_in_pings:
- metrics
bugs:
@@ -2936,7 +2937,8 @@ customize_home:
toggled.
We currently track: most_visited_sites, jump_back_in,
- recently_visited, recently_saved, pocket, and contile.
+ recently_visited, bookmarks, pocket, and contile.
+ We previously tracked bookmarks as recently_saved.
enabled:
type: boolean
description: "Whether or not the preference is *now* enabled"
@@ -9892,11 +9894,11 @@ recent_tabs:
- android-probes@mozilla.com
expires: never
-recent_bookmarks:
+home_bookmarks:
shown:
type: event
description: |
- Recent bookmarks section was shown to the user.
+ Bookmarks section of home was shown to the user. This was previously recent_bookmarks.shown.
bugs:
- https://github.com/mozilla-mobile/fenix/issues/22103
data_reviews:
@@ -9913,8 +9915,8 @@ recent_bookmarks:
lifetime: application
description: |
A counter that indicates the number of times that a user
- has clicked on a recently saved bookmark from the home
- screen.
+ has clicked on a bookmark from the home
+ screen. This was previously recent_bookmarks.bookmark_clicked.
send_in_pings:
- metrics
bugs:
@@ -9934,8 +9936,8 @@ recent_bookmarks:
lifetime: application
description: |
A counter that indicates the number of times that a user
- has clicked the show all button for recently saved bookmarks
- on the home screen.
+ has clicked the show all button for bookmarks
+ on the home screen. This was previously recent_bookmarks.show_all_bookmarks.
send_in_pings:
- metrics
bugs:
@@ -9950,11 +9952,11 @@ recent_bookmarks:
notification_emails:
- android-probes@mozilla.com
expires: never
- recent_bookmarks_count:
+ bookmarks_count:
type: quantity
description: |
The number of bookmarked items appearing in the
- Recently Saved section on the home page.
+ Bookmarks section on the home page. This was previously recent_bookmarks.recent_bookmarks_count.
bugs:
- https://github.com/mozilla-mobile/fenix/issues/22075
data_reviews:
@@ -11587,6 +11589,29 @@ debug_drawer:
- android-probes@mozilla.com
expires: never
+micro_survey:
+ response:
+ type: event
+ description: User response data for a micro survey.
+ extra_keys:
+ feature_name:
+ description: The name of the feature the survey is for e.g. "printing PDF".
+ type: string
+ user_selection:
+ description: |
+ The users selected option. For example, possible values are:
+ "Very satisfied", "satisfied", "neutral", "dissatisfied" and "Very dissatisfied".
+ type: string
+ bugs:
+ - https://bugzilla.mozilla.org/show_bug.cgi?id=1891509
+ data_reviews:
+ - https://bugzilla.mozilla.org/show_bug.cgi?id=1891509
+ data_sensitivity:
+ - interaction
+ notification_emails:
+ - android-probes@mozilla.com
+ expires: never
+
navigation_bar:
home_search_tapped:
type: event
diff --git a/mobile/android/fenix/app/nimbus.fml.yaml b/mobile/android/fenix/app/nimbus.fml.yaml
index d16e1286f6..e0f76f8883 100644
--- a/mobile/android/fenix/app/nimbus.fml.yaml
+++ b/mobile/android/fenix/app/nimbus.fml.yaml
@@ -53,7 +53,7 @@ features:
{
"top-sites": true,
"jump-back-in": true,
- "recently-saved": true,
+ "bookmarks": true,
"recent-explorations": true,
"pocket": true,
"pocket-sponsored-stories": true,
@@ -64,7 +64,7 @@ features:
"sections-enabled": {
"top-sites": true,
"jump-back-in": true,
- "recently-saved": true,
+ "bookmarks": true,
"recent-explorations": true,
"pocket": true,
}
@@ -248,6 +248,7 @@ features:
glean:
description: "A feature that provides server-side configurations for Glean metrics (aka Server Knobs)."
+ allow-coenrollment: true
variables:
metrics-enabled:
description: "A map of metric base-identifiers to booleans representing the state of the 'enabled' flag for that metric."
@@ -257,6 +258,10 @@ features:
description: "Enables precise event timestamps for Glean events"
type: Boolean
default: false
+ delay-ping-lifetime-io:
+ description: "Glean will delay io for ping lifetime metrics"
+ type: Boolean
+ default: true
splash-screen:
description: "A feature that extends splash screen duration, allowing additional data fetching time for the app's initial run."
@@ -435,6 +440,20 @@ features:
value:
enabled: true
+ remote-tab-management:
+ description: >
+ Features that let users manage tabs on other devices that are
+ connected to the same Mozilla account.
+ variables:
+ close-tabs-enabled:
+ description: >
+ Whether the feature to close synced tabs is enabled. When enabled,
+ this device will allow other devices to close tabs that are open on this device, and
+ show a "close" button for tabs that are currently open on other supported devices
+ in the synced tabs tray.
+ type: Boolean
+ default: false
+
types:
objects: {}
@@ -444,8 +463,8 @@ types:
variants:
top-sites:
description: The frecency and pinned sites.
- recently-saved:
- description: The sites the user has bookmarked recently.
+ bookmarks:
+ description: The sites the user has bookmarked.
jump-back-in:
description: The tabs the user was looking immediately before being interrupted.
recent-explorations:
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html b/mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html
index 0ca8bf3bf5..a09fab9788 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/addressForm.html
@@ -1,17 +1,17 @@
<html>
-<head>
- <meta name="viewport" content="width=device-width">
+ <head>
+ <meta name="viewport" content="width=device-width" />
<title>Address_Form</title>
-</head>
-<body>
+ </head>
+ <body>
<form>
- <p>Street Address: <input id="streetAddress" type="text"></p>
- <p>City: <input id="city" type="text"></p>
- <p>Zip Code: <input id="zipCode" type="text"></p>
- <p>Country: <input id="country" type="text"></p>
- <p>Telephone: <input id="telephone" type="text"></p>
- <p>Email: <input id="email" type="text"></p>
- <p>Apartment, suite, etc. <input id="apartment" type="text"></p>
+ <p>Street Address: <input id="streetAddress" type="text" /></p>
+ <p>City: <input id="city" type="text" /></p>
+ <p>Zip Code: <input id="zipCode" type="text" /></p>
+ <p>Country: <input id="country" type="text" /></p>
+ <p>Telephone: <input id="telephone" type="text" /></p>
+ <p>Email: <input id="email" type="text" /></p>
+ <p>Apartment, suite, etc. <input id="apartment" type="text" /></p>
</form>
-</body>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html b/mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html
index 4d82abb822..94393e6bdb 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/audioMediaPage.html
@@ -1,13 +1,13 @@
<html>
-<head>
+ <head>
<title>Audio_Test_Page</title>
-</head>
-<body>
-<p id="testContent">Page content: audio player</p>
-<div class="audioPlayer">
- <audio id="audioSample" controls loop>
- <source src="../resources/audioSample.mp3">
- </audio>
-</div>
-</body>
+ </head>
+ <body>
+ <p id="testContent">Page content: audio player</p>
+ <div class="audioPlayer">
+ <audio id="audioSample" controls loop>
+ <source src="../resources/audioSample.mp3" />
+ </audio>
+ </div>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html b/mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html
index 7b77e92872..57ede7ddf8 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/creditCardForm.html
@@ -1,17 +1,31 @@
<html>
-<head>
- <meta name="viewport" content="width=device-width">
+ <head>
+ <meta name="viewport" content="width=device-width" />
<title>Credit_Card_Form</title>
-</head>
-<body>
+ </head>
+ <body>
<form>
- <p>Card information</p>
- <p>Card Number: <input id="cardNumber" type="text" placeholder="1234 1234 1234 1234"></p>
- <p>Name on card: <input id="nameOnCard"type="text" placeholder="Name on card"></p>
- <p> Expiry date:
- <input id="expiryMonthAndYear" inputmode="numerical" placeholder="MM / YYYY" type="text" />
- </p>
- <p><input type="submit" id="submit" value="Submit" aria-label="submit"/></p>
+ <p>Card information</p>
+ <p>
+ Card Number:
+ <input id="cardNumber" type="text" placeholder="1234 1234 1234 1234" />
+ </p>
+ <p>
+ Name on card:
+ <input id="nameOnCard" type="text" placeholder="Name on card" />
+ </p>
+ <p>
+ Expiry date:
+ <input
+ id="expiryMonthAndYear"
+ inputmode="numerical"
+ placeholder="MM / YYYY"
+ type="text"
+ />
+ </p>
+ <p>
+ <input type="submit" id="submit" value="Submit" aria-label="submit" />
+ </p>
</form>
-</body>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html b/mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html
index 8b81b3b3f4..1dc01c669a 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/cross-site-cookies.html
@@ -1,15 +1,19 @@
<html>
-<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ <!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.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 asset is using the code behind
+ <!-- This asset is using the code behind
- https://www.mozilla-anti-tracking.com/test/dfpi/storage_access_api.html
- test page.
- Source repository: https://github.com/mozilla/anti-tracking-test-pages -->
-<body>
-<h2>Cross-site cookies storage access test</h2>
-<h3>anti-tracker-test.com</h3>
-<h4>different site, cross-origin iframe</h4>
-<iframe width=500 height=1000 src="https://mozilla-mobile.github.io/testapp/anti-tracker-test_set_storage_with_sa_api.html"></iframe>
-</body>
+ <body>
+ <h2>Cross-site cookies storage access test</h2>
+ <h3>anti-tracker-test.com</h3>
+ <h4>different site, cross-origin iframe</h4>
+ <iframe
+ width="500"
+ height="1000"
+ src="https://mozilla-mobile.github.io/testapp/anti-tracker-test_set_storage_with_sa_api.html"
+ ></iframe>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html b/mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html
index 755d15ac84..88652d283f 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/externalLinks.html
@@ -1,29 +1,31 @@
<!DOCTYPE html>
<html>
-<head>
+ <head>
<title>Html_Control_Form</title>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width">
-</head>
+ <meta charset="utf-8" />
+ <meta name="viewport" content="width=device-width" />
+ </head>
-<p>Misc Link Types</p>
-<section>
+ <p>Misc Link Types</p>
+ <section>
<a href="mailto://example@example.com">Email link</a>
-</section>
+ </section>
-<section>
+ <section>
<a href="tel://1234567890">Telephone link</a>
-</section>
+ </section>
-<section>
+ <section>
<a href="vnd.youtube://@Mozilla">Youtube schema link</a>
-</section>
+ </section>
-<section>
+ <section>
<a href="https://m.youtube.com/user/mozilla?cbrd=1">Youtube full link</a>
-</section>
+ </section>
-<section>
- <a href="http://play.google.com/store/apps/details?id=org.mozilla.firefox">Playstore link</a>
-</section>
+ <section>
+ <a href="http://play.google.com/store/apps/details?id=org.mozilla.firefox"
+ >Playstore link</a
+ >
+ </section>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html b/mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html
index 4aa0dfb819..b4b8d9f159 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/generic1.html
@@ -1,10 +1,10 @@
<html>
-<head>
+ <head>
<title>Test_Page_1</title>
-</head>
-<body>
-<h1>
- <p id="testContent">Page content: 1</p>
-</h1>
-</body>
+ </head>
+ <body>
+ <h1>
+ <p id="testContent">Page content: 1</p>
+ </h1>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html b/mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html
index 39a7220f53..8cf29b5c18 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/generic2.html
@@ -1,10 +1,10 @@
<html>
-<head>
+ <head>
<title>Test_Page_2</title>
-</head>
-<body>
-<h1>
- <p id="testContent">Page content: 2</p>
-</h1>
-</body>
+ </head>
+ <body>
+ <h1>
+ <p id="testContent">Page content: 2</p>
+ </h1>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html b/mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html
index 2f033ec8dc..ff9c4032f2 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/generic3.html
@@ -1,16 +1,19 @@
<html>
-<head>
+ <head>
<title>Test_Page_3</title>
-</head>
-<body>
-<h1>
- <p id="testContent">Page content: 3</p>
- <p>
- <a href="https://play.google.com/store/apps/details?id=org.mozilla.fenix">Mozilla Playstore link</a>
- </p>
- <p>
+ </head>
+ <body>
+ <h1>
+ <p id="testContent">Page content: 3</p>
+ <p>
+ <a
+ href="https://play.google.com/store/apps/details?id=org.mozilla.fenix"
+ >Mozilla Playstore link</a
+ >
+ </p>
+ <p>
<a href="../resources/pdfForm.pdf">PDF form file</a>
- </p>
-</h1>
-</body>
+ </p>
+ </h1>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html b/mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html
index 368cfb9270..18a8a7a629 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/generic4.html
@@ -1,20 +1,20 @@
<html>
-<head>
+ <head>
<meta name="viewport" content="width=device-width" />
<title>Test_Page_4</title>
-</head>
-<body>
+ </head>
+ <body>
<p id="testContent">Page content: 4</p>
<a href="generic1.html">Link 1</a>
<a href="generic2.html">Link 2</a>
<a href="generic3.html">Link 3</a>
<p>
- <a href="../resources/rabbit.jpg">
- <img src="../resources/rabbit.jpg" alt="test_link_image">
- </a>
+ <a href="../resources/rabbit.jpg">
+ <img src="../resources/rabbit.jpg" alt="test_link_image" />
+ </a>
</p>
<p>
- <img src="../resources/rabbit.jpg" alt="test_no_link_image">
+ <img src="../resources/rabbit.jpg" alt="test_no_link_image" />
</p>
-</body>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html b/mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html
index e08df8c17f..d8961ebc0a 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/global_privacy_control.html
@@ -1,15 +1,14 @@
<!DOCTYPE html>
<html>
-<meta name="viewport" content="width=device-width">
-<body>
-<script type = "text/javascript" >
- const gpcValue = navigator.globalPrivacyControl
- if (gpcValue) {
- document.write('<p>GPC is enabled.</p>');
- } else {
- document.write('<p>GPC not enabled.</p>');
- }
-</script>
-
-</body>
+ <meta name="viewport" content="width=device-width" />
+ <body>
+ <script type="text/javascript">
+ const gpcValue = navigator.globalPrivacyControl;
+ if (gpcValue) {
+ document.write("<p>GPC is enabled.</p>");
+ } else {
+ document.write("<p>GPC not enabled.</p>");
+ }
+ </script>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html b/mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html
index ca519d6176..8fac0ecf68 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/lorem-ipsum.html
@@ -1,36 +1,36 @@
<!DOCTYPE html>
<html lang="en">
+ <head>
+ <meta charset="utf-8" />
+ <title>
+ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
+ eirmod tempor invidunt
+ </title>
+ <meta content="width=device-width, initial-scale=1" name="viewport" />
+ </head>
-<head>
- <meta charset="utf-8"/>
- <title>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
- eirmod tempor invidunt</title>
- <meta content="width=device-width, initial-scale=1"
- name="viewport"/>
-</head>
+ <body>
+ <p id="testContent">Page content: lorem ipsum</p>
-<body>
-
-<p id="testContent">Page content: lorem ipsum</p>
-
-<h1>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt</h1>
-
-<p>
- Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
- eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam
- voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet
- clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit
- amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
- nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
- sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
- Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor
- sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed
- diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
- sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
- Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor
- sit amet.
-</p>
-
-</body>
+ <h1>
+ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
+ eirmod tempor invidunt
+ </h1>
+ <p>
+ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
+ eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam
+ voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet
+ clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit
+ amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
+ nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed
+ diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
+ Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor
+ sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed
+ diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam
+ erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum
+ dolor sit amet.
+ </p>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html b/mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html
index 51f93c7e78..6963088be5 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/mutedVideoPage.html
@@ -1,49 +1,51 @@
-<!DOCTYPE HTML>
+<!DOCTYPE html>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<html>
-<head>
+ <head>
<title>Muted_Video_Test_Page</title>
-</head>
-<body>
-<p id="testContent">Page content: muted video player</p>
-<div class="playbackState">
- <p>Media file not playing</p>
-</div>
-<div id="video-container" style="text-align:center">
- <button onclick="play()">Play</button>
- <button onclick="pause()">Pause</button>
- <button onclick="fullscreen()">Full Screen</button>
- <br><br>
- <video id="mutedVideo" width="420" autoplay muted controls loop>
- <source src="../resources/clip.mp4" type="video/mp4">
+ </head>
+ <body>
+ <p id="testContent">Page content: muted video player</p>
+ <div class="playbackState">
+ <p>Media file not playing</p>
+ </div>
+ <div id="video-container" style="text-align: center">
+ <button onclick="play()">Play</button>
+ <button onclick="pause()">Pause</button>
+ <button onclick="fullscreen()">Full Screen</button>
+ <br /><br />
+ <video id="mutedVideo" width="420" autoplay muted controls loop>
+ <source src="../resources/clip.mp4" type="video/mp4" />
Your browser does not support HTML video.
- </video>
-</div>
+ </video>
+ </div>
-<script>
- const mutedVideo = document.getElementById("mutedVideo");
+ <script>
+ const mutedVideo = document.getElementById("mutedVideo");
- function play() {
+ function play() {
mutedVideo.play();
- }
+ }
- function pause() {
+ function pause() {
mutedVideo.pause();
- }
+ }
- function fullscreen() {
+ function fullscreen() {
mutedVideo.requestFullscreen();
- }
+ }
- mutedVideo.addEventListener('playing', (event) => {
- document.querySelector('.playbackState').innerHTML="Media file is playing";
- });
+ mutedVideo.addEventListener("playing", event => {
+ document.querySelector(".playbackState").innerHTML =
+ "Media file is playing";
+ });
- mutedVideo.addEventListener('pause', (event) => {
- document.querySelector('.playbackState').innerHTML="Media file is paused";
- });
-</script>
-</body>
+ mutedVideo.addEventListener("pause", event => {
+ document.querySelector(".playbackState").innerHTML =
+ "Media file is paused";
+ });
+ </script>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/password.html b/mobile/android/fenix/app/src/androidTest/assets/pages/password.html
index f906d33707..0faf69511f 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/password.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/password.html
@@ -1,22 +1,23 @@
-
<html>
+ <head>
+ <meta name="viewport" content="width=device-width" />
+ </head>
-<head>
-<meta name="viewport" content="width=device-width">
-</head>
-
-<body aria-label="body">
-
-<form method="GET" action="passwordsubmit.html">
-<p>Username: <input id="username" type="text" value="test@example.com"></p>
-<p>Password: <input id="password" type="password" value="verysecret"></p>
-<p><input type="submit" id="submit" value="Login" aria-label="submit"/></p>
-</form>
-
-</body>
-
-<script>
-document.getElementById("password").value = Math.random().toString();
-</script>
+ <body aria-label="body">
+ <form method="GET" action="passwordsubmit.html">
+ <p>
+ Username: <input id="username" type="text" value="test@example.com" />
+ </p>
+ <p>
+ Password: <input id="password" type="password" value="verysecret" />
+ </p>
+ <p>
+ <input type="submit" id="submit" value="Login" aria-label="submit" />
+ </p>
+ </form>
+ </body>
+ <script>
+ document.getElementById("password").value = Math.random().toString();
+ </script>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html b/mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html
index 5f55881be2..e3cdfdf9eb 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/passwordsubmit.html
@@ -1,8 +1,8 @@
<html>
-<head>
-<meta name="viewport" content="width=device-width">
-</head>
-<body aria-label="body">
-<p>Password submitted. Nope just a test.</p>
-</body>
+ <head>
+ <meta name="viewport" content="width=device-width" />
+ </head>
+ <body aria-label="body">
+ <p>Password submitted. Nope just a test.</p>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html b/mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html
index 1b8ff6fe9c..1951f917bb 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/refresh.html
@@ -1,44 +1,41 @@
-
<html>
-<script>
-
- function setCookie(newVal){
- window.document.cookie = "pageStatus = " + newVal + ";";
+ <script>
+ function setCookie(newVal) {
+ window.document.cookie = "pageStatus = " + newVal + ";";
}
-
function readCookie(name) {
- var nameEQ = name + "=";
- var ca = document.cookie.split(';');
- for(var i=0;i < ca.length;i++) {
- var c = ca[i];
- while (c.charAt(0)==' ') c = c.substring(1,c.length);
- if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
- }
- return null;
+ var nameEQ = name + "=";
+ var ca = document.cookie.split(";");
+ for (var i = 0; i < ca.length; i++) {
+ var c = ca[i];
+ while (c.charAt(0) == " ") c = c.substring(1, c.length);
+ if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
+ }
+ return null;
}
- function valSwap(){
- currentCookie = readCookie("pageStatus");
- if(currentCookie == null) {
- setCookie("DEFAULT");
- }
+ function valSwap() {
+ currentCookie = readCookie("pageStatus");
+ if (currentCookie == null) {
+ setCookie("DEFAULT");
+ }
- if (currentCookie.localeCompare("REFRESHED") == 0) {
- setCookie("DEFAULT");
- return "DEFAULT";
- } else {
- setCookie("REFRESHED");
- return "REFRESHED";
- }
+ if (currentCookie.localeCompare("REFRESHED") == 0) {
+ setCookie("DEFAULT");
+ return "DEFAULT";
+ } else {
+ setCookie("REFRESHED");
+ return "REFRESHED";
+ }
}
var textToShow = valSwap();
- window.addEventListener('DOMContentLoaded', (event) => {
- document.querySelector('h1').innerHTML = textToShow;
+ window.addEventListener("DOMContentLoaded", event => {
+ document.querySelector("h1").innerHTML = textToShow;
});
-</script>
-<body>
-<h1>DEFAULT</h1>
-</body>
+ </script>
+ <body>
+ <h1>DEFAULT</h1>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html b/mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html
index 23d030a4f7..79731be911 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/storage_check.html
@@ -1,23 +1,21 @@
<!DOCTYPE html>
<html>
-<meta name="viewport" content="width=device-width">
-<body>
+ <meta name="viewport" content="width=device-width" />
+ <body>
+ <h1>Storage check</h1>
-<h1>Storage check</h1>
+ <script type="text/javascript">
+ if (sessionStorage.getItem("sessionTest") == "session storage") {
+ document.write("<p>Session storage has value</p>");
+ } else {
+ document.write("<p>Session storage empty</p>");
+ }
-<script type="text/javascript">
- if (sessionStorage.getItem('sessionTest') == 'session storage') {
- document.write('<p>Session storage has value</p>');
- } else {
- document.write('<p>Session storage empty</p>');
- }
-
- if (localStorage.getItem('localTest') == 'local storage') {
- document.write('<p>Local storage has value</p>');
- } else {
- document.write('<p>Local storage empty</p>');
- }
-</script>
-
-</body>
+ if (localStorage.getItem("localTest") == "local storage") {
+ document.write("<p>Local storage has value</p>");
+ } else {
+ document.write("<p>Local storage empty</p>");
+ }
+ </script>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html b/mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html
index a10b469462..e90ebed9e0 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/storage_write.html
@@ -1,28 +1,30 @@
<!DOCTYPE html>
<html>
-<meta name="viewport" content="width=device-width">
-<body>
+ <meta name="viewport" content="width=device-width" />
+ <body>
+ <h1>Storage Write</h1>
-<h1>Storage Write</h1>
+ <p id="cookies"></p>
+ <button id="setCookies">Set cookies</button>
-<p id="cookies"></p>
-<button id="setCookies">Set cookies</button>
+ <script type="text/javascript">
+ (function () {
+ document.getElementById("cookies").textContent = document.cookie
+ ? document.cookie
+ : "No cookies set";
+ })();
-<script type="text/javascript">
- (function() {
- document.getElementById("cookies").textContent = document.cookie?document.cookie:"No cookies set";
- })();
+ document
+ .getElementById("setCookies")
+ .addEventListener("click", function () {
+ document.cookie = "user=android";
+ document.getElementById("cookies").textContent = document.cookie;
+ });
- document.getElementById("setCookies").addEventListener("click", function() {
- document.cookie = "user=android";
- document.getElementById("cookies").textContent = document.cookie;
- });
+ sessionStorage.setItem("sessionTest", "session storage");
+ localStorage.setItem("localTest", "local storage");
- sessionStorage.setItem('sessionTest', 'session storage');
- localStorage.setItem('localTest', 'local storage');
-
- document.write('<p>Values written to storage</p>');
-</script>
-
-</body>
+ document.write("<p>Values written to storage</p>");
+ </script>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html b/mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html
index 50af35c170..3245cb5fa2 100644
--- a/mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html
+++ b/mobile/android/fenix/app/src/androidTest/assets/pages/videoMediaPage.html
@@ -1,49 +1,51 @@
-<!DOCTYPE HTML>
+<!DOCTYPE html>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<html>
-<head>
+ <head>
<title>Video_Test_Page</title>
-</head>
-<body>
-<p id="testContent">Page content: video player</p>
-<div class="playbackState">
- <p>Media file not playing</p>
-</div>
-<div id="video-container" style="text-align:center">
- <button onclick="play()">Play</button>
- <button onclick="pause()">Pause</button>
- <button onclick="fullscreen()">Full Screen</button>
- <br><br>
- <video id="video" width="420" autoplay controls loop>
- <source src="../resources/clip.mp4" type="video/mp4">
+ </head>
+ <body>
+ <p id="testContent">Page content: video player</p>
+ <div class="playbackState">
+ <p>Media file not playing</p>
+ </div>
+ <div id="video-container" style="text-align: center">
+ <button onclick="play()">Play</button>
+ <button onclick="pause()">Pause</button>
+ <button onclick="fullscreen()">Full Screen</button>
+ <br /><br />
+ <video id="video" width="420" autoplay controls loop>
+ <source src="../resources/clip.mp4" type="video/mp4" />
Your browser does not support HTML video.
- </video>
-</div>
+ </video>
+ </div>
-<script>
- const video = document.getElementById("video");
+ <script>
+ const video = document.getElementById("video");
- function play() {
+ function play() {
video.play();
- }
+ }
- function pause() {
+ function pause() {
video.pause();
- }
+ }
- function fullscreen() {
+ function fullscreen() {
video.requestFullscreen();
- }
+ }
- video.addEventListener('playing', (event) => {
- document.querySelector('.playbackState').innerHTML="Media file is playing";
- });
+ video.addEventListener("playing", event => {
+ document.querySelector(".playbackState").innerHTML =
+ "Media file is playing";
+ });
- video.addEventListener('pause', (event) => {
- document.querySelector('.playbackState').innerHTML="Media file is paused";
- });
-</script>
-</body>
+ video.addEventListener("pause", event => {
+ document.querySelector(".playbackState").innerHTML =
+ "Media file is paused";
+ });
+ </script>
+ </body>
</html>
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt
index ac40972db6..fb8fe67616 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/helpers/AppAndSystemHelper.kt
@@ -46,6 +46,7 @@ import org.mozilla.fenix.customtabs.ExternalAppBrowserActivity
import org.mozilla.fenix.helpers.Constants.PackageName.PIXEL_LAUNCHER
import org.mozilla.fenix.helpers.Constants.PackageName.YOUTUBE_APP
import org.mozilla.fenix.helpers.Constants.TAG
+import org.mozilla.fenix.helpers.MatcherHelper.itemWithResIdContainingText
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTimeShort
import org.mozilla.fenix.helpers.TestHelper.appContext
@@ -586,4 +587,13 @@ object AppAndSystemHelper {
e.printStackTrace()
}
}
+
+ fun dismissSetAsDefaultBrowserOnboardingDialog() {
+ Log.i(TAG, "dismissSetAsDefaultBrowserOnboardingDialog: Detected API ${Build.VERSION.SDK_INT}")
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
+ Log.i(TAG, "dismissSetAsDefaulltBrowserOnboardingDialog: Trying to click the \"Cancel\" dialog button.")
+ itemWithResIdContainingText("android:id/button2", "Cancel").click()
+ Log.i(TAG, "dismissSetAsDefaulltBrowserOnboardingDialog: Clicked the \"Cancel\" dialog button.")
+ }
+ }
}
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js
index e1210bd24e..766a033b3a 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark.js
@@ -8,19 +8,17 @@
*/
EnableEngines(["bookmarks"]);
-var phases = { "phase1": "profile1" };
-
+var phases = { phase1: "profile1" };
// expected bookmark state
var bookmarksCreated = {
-"mobile": [{
- uri: "http://www.example.com/",
- title: "Example Domain"}]
+ mobile: [
+ {
+ uri: "http://www.example.com/",
+ title: "Example Domain",
+ },
+ ],
};
// sync and verify bookmarks
-Phase("phase1", [
- [Sync],
- [Bookmarks.add, bookmarksCreated],
- [Sync]
-]); \ No newline at end of file
+Phase("phase1", [[Sync], [Bookmarks.add, bookmarksCreated], [Sync]]);
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js
index a6a42aa6d0..69489f84a7 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_bookmark_desktop.js
@@ -8,18 +8,17 @@
*/
EnableEngines(["bookmarks"]);
-var phases = { "phase1": "profile1" };
-
+var phases = { phase1: "profile1" };
// expected bookmark state
var bookmarksExpected = {
-"mobile": [{
- uri: "http://www.example.com/",
- title: "Example Domain"}]
+ mobile: [
+ {
+ uri: "http://www.example.com/",
+ title: "Example Domain",
+ },
+ ],
};
// sync and verify bookmarks
-Phase("phase1", [
- [Sync],
- [Bookmarks.verify, bookmarksExpected],
-]);
+Phase("phase1", [[Sync], [Bookmarks.verify, bookmarksExpected]]);
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js
index 8b915945e2..9aa96f4aef 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history.js
@@ -8,26 +8,18 @@
*/
EnableEngines(["history"]);
-var phases = { "phase1": "profile1" };
-
+var phases = { phase1: "profile1" };
// expected history state
var historyCreated = [
- { uri: "http://www.example.com/",
- visits: [
- { type: 1 ,
- date: 0
- },
- { type: 2,
- date: -1
- }
- ]
- }
+ {
+ uri: "http://www.example.com/",
+ visits: [
+ { type: 1, date: 0 },
+ { type: 2, date: -1 },
+ ],
+ },
];
// sync and verify history
-Phase("phase1", [
- [Sync],
- [History.add, historyCreated],
- [Sync]
-]);
+Phase("phase1", [[Sync], [History.add, historyCreated], [Sync]]);
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js
index 5dfdd1aa47..7cf2acaccb 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_history_desktop.js
@@ -8,21 +8,12 @@
*/
EnableEngines(["history"]);
-var phases = { "phase1": "profile1" };
-
+var phases = { phase1: "profile1" };
// expected history state
var historyExpected = [
- { uri: "http://www.example.com/",
- visits: [
- { type: 1 },
- { type: 2 }
- ]
- }
+ { uri: "http://www.example.com/", visits: [{ type: 1 }, { type: 2 }] },
];
// sync and verify history
-Phase("phase1", [
- [Sync],
- [History.verify, historyExpected]
-]);
+Phase("phase1", [[Sync], [History.verify, historyExpected]]);
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js
index 16eb4bcf34..bc1d1e1071 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/test_logins.js
@@ -8,11 +8,11 @@
*/
EnableEngines(["passwords"]);
-var phases = { "phase1": "profile1" };
-
+var phases = { phase1: "profile1" };
// expected tabs state
-var password_list = [{
+var password_list = [
+ {
hostname: "https://accounts.google.com",
submitURL: "https://accounts.google.com/signin/challenge/sl/password",
realm: null,
@@ -20,11 +20,8 @@ var password_list = [{
password: "test15mz",
usernameField: "Email",
passwordField: "Passwd",
- }];
+ },
+];
// sync and verify tabs
-Phase("phase1", [
- [Sync],
- [Passwords.add, password_list],
- [Sync]
-]); \ No newline at end of file
+Phase("phase1", [[Sync], [Passwords.add, password_list], [Sync]]);
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt
index 96ca6ad724..d575521a5d 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/BookmarksTest.kt
@@ -9,7 +9,6 @@ import androidx.test.espresso.Espresso.openActionBarOverflowOrOptionsMenu
import androidx.test.espresso.Espresso.pressBack
import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation
import kotlinx.coroutines.runBlocking
-import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.R
@@ -237,7 +236,6 @@ class BookmarksTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/1919261
- @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807268")
@Test
fun verifyOpenAllInNewTabsOptionTest() {
val webPages = listOf(
@@ -261,11 +259,6 @@ class BookmarksTest : TestSetup() {
createBookmark(webPages[1].url, "root")
createBookmark(webPages[2].url, "root")
createBookmark(webPages[3].url, "sub")
- }.openTabDrawer {
- closeTab()
- }
-
- browserScreen {
}.openThreeDotMenu {
}.openBookmarks {
}.openThreeDotMenu("root") {
@@ -281,7 +274,6 @@ class BookmarksTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/1919262
- @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807268")
@Test
fun verifyOpenAllInPrivateTabsTest() {
val webPages = listOf(
@@ -301,11 +293,6 @@ class BookmarksTest : TestSetup() {
browserScreen {
createBookmark(webPages[0].url, "root")
createBookmark(webPages[1].url, "sub")
- }.openTabDrawer {
- closeTab()
- }
-
- browserScreen {
}.openThreeDotMenu {
}.openBookmarks {
}.openThreeDotMenu("root") {
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt
index 398533830a..995e43f794 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeBookmarksTest.kt
@@ -233,11 +233,6 @@ class ComposeBookmarksTest : TestSetup() {
createBookmark(webPages[1].url, "root")
createBookmark(webPages[2].url, "root")
createBookmark(webPages[3].url, "sub")
- }.openComposeTabDrawer(activityTestRule) {
- closeTab()
- }
-
- browserScreen {
}.openThreeDotMenu {
}.openBookmarks {
}.openThreeDotMenu("root") {
@@ -272,11 +267,6 @@ class ComposeBookmarksTest : TestSetup() {
browserScreen {
createBookmark(webPages[0].url, "root")
createBookmark(webPages[1].url, "sub")
- }.openComposeTabDrawer(activityTestRule) {
- closeTab()
- }
-
- browserScreen {
}.openThreeDotMenu {
}.openBookmarks {
}.openThreeDotMenu("root") {
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt
index e815972900..979824f2f8 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeCrashReportingTest.kt
@@ -5,7 +5,6 @@
package org.mozilla.fenix.ui
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
-import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.R
@@ -48,7 +47,6 @@ class ComposeCrashReportingTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2336134
- @Ignore("Test failure caused by: https://github.com/mozilla-mobile/fenix/issues/19964")
@Test
fun restoreTabFromTabCrashedReporterTest() {
val website = TestAssetHelper.getGenericAsset(mockWebServer, 1)
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt
index d3b17f57d9..2268825d3a 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeHistoryTest.kt
@@ -7,7 +7,6 @@ package org.mozilla.fenix.ui
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
import androidx.test.espresso.Espresso.openActionBarOverflowOrOptionsMenu
import androidx.test.espresso.Espresso.pressBack
-import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.R
@@ -155,7 +154,6 @@ class ComposeHistoryTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/339696
- @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807268")
@Test
fun openMultipleSelectedHistoryItemsInANewTabTest() {
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt
index eaa76b1481..30f1ea8dc5 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/ComposeSearchTest.kt
@@ -55,7 +55,7 @@ class ComposeSearchTest : TestSetup() {
private lateinit var searchMockServer: MockWebServer
private val queryString: String = "firefox"
private val generalEnginesList = listOf("DuckDuckGo", "Google", "Bing")
- private val topicEnginesList = listOf("Amazon.com", "Wikipedia", "eBay")
+ private val topicEnginesList = listOf("Wikipedia", "eBay")
@get:Rule
val activityTestRule = AndroidComposeTestRule(
@@ -111,7 +111,7 @@ class ComposeSearchTest : TestSetup() {
verifySearchToolbar(isDisplayed = true)
clickSearchSelectorButton()
verifySearchShortcutListContains(
- "DuckDuckGo", "Google", "Amazon.com", "Wikipedia", "Bing", "eBay",
+ "DuckDuckGo", "Google", "Wikipedia", "Bing", "eBay",
"Bookmarks", "Tabs", "History", "Search settings",
)
}
@@ -153,7 +153,7 @@ class ComposeSearchTest : TestSetup() {
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2154196
@Test
fun verifySearchPlaceholderForTopicSpecificSearchEnginesTest() {
- val topicEnginesList = listOf("Amazon.com", "Wikipedia", "eBay")
+ val topicEnginesList = listOf("Wikipedia", "eBay")
topicEnginesList.forEach {
homeScreen {
@@ -229,7 +229,7 @@ class ComposeSearchTest : TestSetup() {
@SmokeTest
@Test
fun searchEnginesCanBeChangedTemporarilyFromSearchSelectorMenuTest() {
- val enginesList = listOf("DuckDuckGo", "Google", "Amazon.com", "Wikipedia", "Bing", "eBay")
+ val enginesList = listOf("DuckDuckGo", "Google", "Wikipedia", "Bing", "eBay")
enginesList.forEach {
homeScreen {
@@ -303,13 +303,12 @@ class ComposeSearchTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/1592229
- @Ignore("Test run timing out: https://github.com/mozilla-mobile/fenix/issues/27704")
@Test
fun verifyAPageIsAddedToASearchGroupOnlyOnceTest() {
val firstPageUrl = TestAssetHelper.getGenericAsset(searchMockServer, 1).url
val secondPageUrl = TestAssetHelper.getGenericAsset(searchMockServer, 2).url
val originPageUrl =
- "http://localhost:${searchMockServer.port}/pages/searchResults.html?search=test%20search".toUri()
+ "http://localhost:${searchMockServer.port}/pages/searchResults.html?search=firefox".toUri()
val searchEngineName = "TestSearchEngine"
// setting our custom mockWebServer search URL
setCustomSearchEngine(searchMockServer, searchEngineName)
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt
index be99ebe8af..224de9a675 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt
@@ -5,7 +5,6 @@
package org.mozilla.fenix.ui
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
-import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.R
@@ -47,7 +46,6 @@ class CrashReportingTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2336134
- @Ignore("Test failure caused by: https://github.com/mozilla-mobile/fenix/issues/19964")
@Test
fun restoreTabFromTabCrashedReporterTest() {
val website = TestAssetHelper.getGenericAsset(mockWebServer, 1)
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt
index 2e881e16fe..938c13d857 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/FirefoxSuggestTest.kt
@@ -51,7 +51,7 @@ class FirefoxSuggestTest : TestSetup() {
),
"Houzz" to listOf(
"Houzz.com - Official Site",
- "houzz.com/products?m_refid=us-dsp-mpl-admp-219577_15416306_kwd-353208810&adcid=319104989&mfadid=adm&utm_source=admarketplace&utm_medium=cpc&utm_campaign=Privacy&utm_term=houzz&utm_content=319104989us1287${getSponsoredFxSuggestPlaceHolder()}",
+ "houzz.com/products?m_refid=us-dsp-mpl-admp-219577_15416306_kwd-353208810&adcid=319104989us1287${getSponsoredFxSuggestPlaceHolder()}&utm_source=admarketplace&utm_medium=cpc&utm_campaign=Privacy&utm_term=houzz&utm_content=319104989&mfadid=adm",
),
"Spanx" to listOf(
"SPANX® - Official Site",
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt
index 317aa9c397..b551ec831a 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/LoginsTest.kt
@@ -8,7 +8,6 @@ import android.os.Build
import android.view.autofill.AutofillManager
import androidx.core.net.toUri
import org.junit.Before
-import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.customannotations.SmokeTest
@@ -538,7 +537,6 @@ class LoginsTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/593768
- @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1812995")
@Test
fun doNotSaveOptionWillNotUpdateALoginTest() {
val loginPage = "https://mozilla-mobile.github.io/testapp/v2.0/loginForm.html"
@@ -547,19 +545,18 @@ class LoginsTest : TestSetup() {
navigationToolbar {
}.enterURLAndEnterToBrowser(loginPage.toUri()) {
setPageObjectText(itemWithResId("username"), "mozilla")
+ waitForAppWindowToBeUpdated()
setPageObjectText(itemWithResId("password"), "firefox")
+ waitForAppWindowToBeUpdated()
clickPageObject(itemWithResId("submit"))
verifySaveLoginPromptIsDisplayed()
clickPageObject(itemWithText("Save"))
- }.openTabDrawer {
- closeTab()
- }
-
- navigationToolbar {
- }.enterURLAndEnterToBrowser(loginPage.toUri()) {
+ waitForAppWindowToBeUpdated()
clickPageObject(itemWithResId("togglePassword"))
setPageObjectText(itemWithResId("username"), "mozilla")
+ waitForAppWindowToBeUpdated()
setPageObjectText(itemWithResId("password"), "fenix")
+ waitForAppWindowToBeUpdated()
clickPageObject(itemWithResId("submit"))
verifySaveLoginPromptIsDisplayed()
clickPageObject(itemWithText("Don’t update"))
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt
index 95ced206a2..cad28b1878 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/NimbusMessagingHomescreenTest.kt
@@ -84,7 +84,7 @@ class NimbusMessagingHomescreenTest : TestSetup() {
HomeScreenSection.POCKET to false,
HomeScreenSection.POCKET_SPONSORED_STORIES to false,
HomeScreenSection.RECENT_EXPLORATIONS to false,
- HomeScreenSection.RECENTLY_SAVED to false,
+ HomeScreenSection.BOOKMARKS to false,
HomeScreenSection.TOP_SITES to false,
),
)
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt
index 4eead4f63c..d2da41ca11 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/OnboardingTest.kt
@@ -1,9 +1,12 @@
package org.mozilla.fenix.ui
+import android.os.Build
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.customannotations.SmokeTest
+import org.mozilla.fenix.helpers.AppAndSystemHelper.dismissSetAsDefaultBrowserOnboardingDialog
+import org.mozilla.fenix.helpers.AppAndSystemHelper.runWithCondition
import org.mozilla.fenix.helpers.AppAndSystemHelper.runWithLauncherIntent
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
import org.mozilla.fenix.helpers.TestSetup
@@ -20,9 +23,13 @@ class OnboardingTest : TestSetup() {
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2122321
@Test
fun verifyFirstOnboardingCardItemsTest() {
- runWithLauncherIntent(activityTestRule) {
- homeScreen {
- verifyFirstOnboardingCard(activityTestRule)
+ // Run UI test only on devices with Android version lower than 10
+ // because on Android 10 and above, the default browser dialog is shown and the first onboarding card is skipped
+ runWithCondition(Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) {
+ runWithLauncherIntent(activityTestRule) {
+ homeScreen {
+ verifyFirstOnboardingCard(activityTestRule)
+ }
}
}
}
@@ -31,15 +38,19 @@ class OnboardingTest : TestSetup() {
@SmokeTest
@Test
fun verifyFirstOnboardingCardItemsFunctionalityTest() {
- runWithLauncherIntent(activityTestRule) {
- homeScreen {
- clickDefaultCardNotNowOnboardingButton(activityTestRule)
- verifySecondOnboardingCard(activityTestRule)
- swipeSecondOnboardingCardToRight()
- }.clickSetAsDefaultBrowserOnboardingButton(activityTestRule) {
- verifyAndroidDefaultAppsMenuAppears()
- }.goBackToOnboardingScreen {
- verifySecondOnboardingCard(activityTestRule)
+ // Run UI test only on devices with Android version lower than 10
+ // because on Android 10 and above, the default browser dialog is shown and the first onboarding card is skipped
+ runWithCondition(Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) {
+ runWithLauncherIntent(activityTestRule) {
+ homeScreen {
+ clickDefaultCardNotNowOnboardingButton(activityTestRule)
+ verifySecondOnboardingCard(activityTestRule)
+ swipeSecondOnboardingCardToRight()
+ }.clickSetAsDefaultBrowserOnboardingButton(activityTestRule) {
+ verifyAndroidDefaultAppsMenuAppears()
+ }.goBackToOnboardingScreen {
+ verifySecondOnboardingCard(activityTestRule)
+ }
}
}
}
@@ -49,7 +60,12 @@ class OnboardingTest : TestSetup() {
fun verifySecondOnboardingCardItemsTest() {
runWithLauncherIntent(activityTestRule) {
homeScreen {
- clickDefaultCardNotNowOnboardingButton(activityTestRule)
+ // Check if the device is running on Android version lower than 10
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) {
+ // If true, click the "Not Now" button from the first onboarding card
+ clickDefaultCardNotNowOnboardingButton(activityTestRule)
+ }
+ dismissSetAsDefaultBrowserOnboardingDialog()
verifySecondOnboardingCard(activityTestRule)
}
}
@@ -61,7 +77,12 @@ class OnboardingTest : TestSetup() {
fun verifyThirdOnboardingCardSignInFunctionalityTest() {
runWithLauncherIntent(activityTestRule) {
homeScreen {
- clickDefaultCardNotNowOnboardingButton(activityTestRule)
+ // Check if the device is running on Android version lower than 10
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) {
+ // If true, click the "Not Now" button from the first onboarding card
+ clickDefaultCardNotNowOnboardingButton(activityTestRule)
+ }
+ dismissSetAsDefaultBrowserOnboardingDialog()
verifySecondOnboardingCard(activityTestRule)
clickAddSearchWidgetNotNowOnboardingButton(activityTestRule)
verifyThirdOnboardingCard(activityTestRule)
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt
index 674924c954..e5d52152e3 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/PocketTest.kt
@@ -2,6 +2,7 @@ package org.mozilla.fenix.ui
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
import org.junit.Before
+import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.helpers.Constants
@@ -63,6 +64,7 @@ class PocketTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2252513
+ @Ignore("Bug 1868291 - Intermittent failure in org.mozilla.fenix.ui.PocketTest.openPocketStoryItemTest")
@Test
fun openPocketStoryItemTest() {
activityTestRule.activityRule.applySettingsExceptions {
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt
index ede7b06b5d..6d2202c3ba 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SearchTest.kt
@@ -68,7 +68,7 @@ class SearchTest : TestSetup() {
private lateinit var searchMockServer: MockWebServer
private var queryString = "firefox"
private val generalEnginesList = listOf("DuckDuckGo", "Google", "Bing")
- private val topicEnginesList = listOf("Amazon.com", "Wikipedia", "eBay")
+ private val topicEnginesList = listOf("Wikipedia", "eBay")
@get:Rule
val activityTestRule = AndroidComposeTestRule(
@@ -123,7 +123,7 @@ class SearchTest : TestSetup() {
verifySearchToolbar(isDisplayed = true)
clickSearchSelectorButton()
verifySearchShortcutListContains(
- "DuckDuckGo", "Google", "Amazon.com", "Wikipedia", "Bing", "eBay",
+ "DuckDuckGo", "Google", "Wikipedia", "Bing", "eBay",
"Bookmarks", "Tabs", "History", "Search settings",
)
}
@@ -165,7 +165,7 @@ class SearchTest : TestSetup() {
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2154196
@Test
fun verifySearchPlaceholderForTopicSpecificSearchEnginesTest() {
- val topicEnginesList = listOf("Amazon.com", "Wikipedia", "eBay")
+ val topicEnginesList = listOf("Wikipedia", "eBay")
topicEnginesList.forEach {
homeScreen {
@@ -241,7 +241,7 @@ class SearchTest : TestSetup() {
@SmokeTest
@Test
fun searchEnginesCanBeChangedTemporarilyFromSearchSelectorMenuTest() {
- val enginesList = listOf("DuckDuckGo", "Google", "Amazon.com", "Wikipedia", "Bing", "eBay")
+ val enginesList = listOf("DuckDuckGo", "Google", "Wikipedia", "Bing", "eBay")
enginesList.forEach {
homeScreen {
@@ -802,7 +802,6 @@ class SearchTest : TestSetup() {
verifySearchShortcutListContains(
"Google",
"Bing",
- "Amazon.com",
"DuckDuckGo",
"ويكيبيديا (ar)",
)
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt
index 3e37fb5e3b..1144deb9c1 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsAboutTest.kt
@@ -21,7 +21,7 @@ import org.mozilla.fenix.ui.robots.homeScreen
class SettingsAboutTest : TestSetup() {
@get:Rule
- val activityIntentTestRule = HomeActivityIntentTestRule()
+ val activityIntentTestRule = HomeActivityIntentTestRule.withDefaultSettingsOverrides()
@Rule
@JvmField
@@ -61,10 +61,6 @@ class SettingsAboutTest : TestSetup() {
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/246961
@Test
fun verifyAboutFirefoxMenuItems() {
- activityIntentTestRule.applySettingsExceptions {
- it.isJumpBackInCFREnabled = false
- it.isTCPCFREnabled = false
- }
homeScreen {
}.openThreeDotMenu {
}.openSettings {
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt
index 8dc31c64e8..0f41e4ac94 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsHomepageTest.kt
@@ -124,12 +124,12 @@ class SettingsHomepageTest : TestSetup() {
}.openThreeDotMenu {
}.bookmarkPage {
}.goToHomescreen {
- verifyRecentBookmarksSectionIsDisplayed(exists = true)
+ verifyBookmarksSectionIsDisplayed(exists = true)
}.openThreeDotMenu {
}.openCustomizeHome {
clickRecentBookmarksButton()
}.goBackToHomeScreen {
- verifyRecentBookmarksSectionIsDisplayed(exists = false)
+ verifyBookmarksSectionIsDisplayed(exists = false)
}
}
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt
index 5abbaa8b4a..d12d3a9c8c 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSearchTest.kt
@@ -9,7 +9,6 @@ import androidx.test.espresso.Espresso.pressBack
import okhttp3.mockwebserver.MockWebServer
import org.junit.After
import org.junit.Before
-import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.customannotations.SmokeTest
@@ -511,7 +510,6 @@ class SettingsSearchTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/412927
- @Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807268")
@Test
fun verifyShowClipboardSuggestionsToggleTest() {
val link = "https://www.mozilla.org/en-US/"
@@ -599,12 +597,11 @@ class SettingsSearchTest : TestSetup() {
verifySearchShortcutChecked(
EngineShortcut(name = "Google", checkboxIndex = 1, isChecked = true),
EngineShortcut(name = "Bing", checkboxIndex = 4, isChecked = true),
- EngineShortcut(name = "Amazon.com", checkboxIndex = 7, isChecked = true),
- EngineShortcut(name = "DuckDuckGo", checkboxIndex = 10, isChecked = true),
- EngineShortcut(name = "eBay", checkboxIndex = 13, isChecked = true),
- EngineShortcut(name = "Wikipedia", checkboxIndex = 16, isChecked = true),
- EngineShortcut(name = "Reddit", checkboxIndex = 19, isChecked = false),
- EngineShortcut(name = "YouTube", checkboxIndex = 22, isChecked = false),
+ EngineShortcut(name = "DuckDuckGo", checkboxIndex = 7, isChecked = true),
+ EngineShortcut(name = "eBay", checkboxIndex = 10, isChecked = true),
+ EngineShortcut(name = "Wikipedia", checkboxIndex = 13, isChecked = true),
+ EngineShortcut(name = "Reddit", checkboxIndex = 16, isChecked = false),
+ EngineShortcut(name = "YouTube", checkboxIndex = 19, isChecked = false),
)
}
}
@@ -619,14 +616,13 @@ class SettingsSearchTest : TestSetup() {
}.openSearchSubMenu {
openManageShortcutsMenu()
selectSearchShortcut(EngineShortcut(name = "Google", checkboxIndex = 1))
- selectSearchShortcut(EngineShortcut(name = "Amazon.com", checkboxIndex = 7))
- selectSearchShortcut(EngineShortcut(name = "Reddit", checkboxIndex = 19))
- selectSearchShortcut(EngineShortcut(name = "YouTube", checkboxIndex = 22))
+ selectSearchShortcut(EngineShortcut(name = "Reddit", checkboxIndex = 16))
+ selectSearchShortcut(EngineShortcut(name = "YouTube", checkboxIndex = 19))
exitMenu()
}
searchScreen {
clickSearchSelectorButton()
- verifySearchShortcutListContains("Google", "Amazon.com", shouldExist = false)
+ verifySearchShortcutListContains("Google", shouldExist = false)
verifySearchShortcutListContains("YouTube", shouldExist = true)
verifySearchShortcutListContains("Reddit", shouldExist = true)
}
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt
index 4b3842fc6a..720f90c4c8 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/SettingsSitePermissionsTest.kt
@@ -8,7 +8,6 @@ import androidx.core.net.toUri
import androidx.test.espresso.Espresso.pressBack
import androidx.test.filters.SdkSuppress
import mozilla.components.concept.engine.mediasession.MediaSession
-import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.customannotations.SmokeTest
@@ -146,7 +145,6 @@ class SettingsSitePermissionsTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2286807
- @Ignore("Failing, see https://bugzilla.mozilla.org/show_bug.cgi?id=1827599")
@SmokeTest
@Test
fun verifyAutoplayBlockAudioOnlySettingOnMutedVideoTest() {
@@ -210,7 +208,6 @@ class SettingsSitePermissionsTest : TestSetup() {
}
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/2286806
- @Ignore("Failing, see https://bugzilla.mozilla.org/show_bug.cgi?id=1827599")
@Test
fun verifyAutoplayAllowAudioVideoSettingOnMutedVideoTest() {
val mutedVideoTestPage = getMutedVideoPageAsset(mockWebServer)
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt
index 2732ccbcab..cbbceaff97 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/HomeScreenRobot.kt
@@ -430,8 +430,8 @@ class HomeScreenRobot {
fun verifyJumpBackInShowAllButton() = assertUIObjectExists(itemContainingText(getStringResource(R.string.recent_tabs_show_all)))
fun verifyRecentlyVisitedSectionIsDisplayed(exists: Boolean) =
assertUIObjectExists(itemContainingText(getStringResource(R.string.history_metadata_header_2)), exists = exists)
- fun verifyRecentBookmarksSectionIsDisplayed(exists: Boolean) =
- assertUIObjectExists(itemContainingText(getStringResource(R.string.recently_saved_title)), exists = exists)
+ fun verifyBookmarksSectionIsDisplayed(exists: Boolean) =
+ assertUIObjectExists(itemContainingText(getStringResource(R.string.home_bookmarks_title)), exists = exists)
fun verifyRecentlyVisitedSearchGroupDisplayed(shouldBeDisplayed: Boolean, searchTerm: String, groupSize: Int) {
// checks if the search group exists in the Recently visited section
@@ -439,12 +439,12 @@ class HomeScreenRobot {
scrollToElementByText("Recently visited")
assertUIObjectExists(
itemContainingText(searchTerm)
- .getFromParent(UiSelector().text("$groupSize sites")),
+ .getFromParent(UiSelector().text("$groupSize pages")),
)
} else {
assertUIObjectIsGone(
itemContainingText(searchTerm)
- .getFromParent(UiSelector().text("$groupSize sites")),
+ .getFromParent(UiSelector().text("$groupSize pages")),
)
}
}
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt
index 9d1c919a37..c78994784a 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuHomepageRobot.kt
@@ -444,7 +444,7 @@ private fun jumpBackInButton() =
onView(allOf(withText(R.string.customize_toggle_jump_back_in)))
private fun recentBookmarksButton() =
- onView(allOf(withText(R.string.customize_toggle_recent_bookmarks)))
+ onView(allOf(withText(R.string.customize_toggle_bookmarks)))
private fun recentlyVisitedButton() =
onView(allOf(withText(R.string.customize_toggle_recently_visited)))
diff --git a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt
index a20a79088a..70317c8937 100644
--- a/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt
+++ b/mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt
@@ -162,23 +162,25 @@ class ThreeDotMenuMainRobot {
assertUIObjectExists(
normalBrowsingNewTabButton(),
bookmarksButton(),
+ addBookmarkButton(),
historyButton(),
downloadsButton(),
+ passwordsButton(),
addOnsButton(),
syncAndSaveDataButton(),
findInPageButton(),
+ translateButton(),
desktopSiteButton(),
reportSiteIssueButton(),
- addToHomeScreenButton(),
- addToShortcutsButton(),
- saveToCollectionButton(),
- addBookmarkButton(),
desktopSiteToggle(isRequestDesktopSiteEnabled),
- translateButton(),
+
)
// Swipe to second part of menu
expandMenu()
assertUIObjectExists(
+ addToHomeScreenButton(),
+ addToShortcutsButton(),
+ saveToCollectionButton(),
settingsButton(),
)
if (FxNimbus.features.print.value().browserPrintEnabled) {
@@ -197,6 +199,7 @@ class ThreeDotMenuMainRobot {
bookmarksButton(),
historyButton(),
downloadsButton(),
+ passwordsButton(),
addOnsButton(),
// Disabled step due to https://github.com/mozilla-mobile/fenix/issues/26788
// syncAndSaveDataButton,
@@ -717,6 +720,8 @@ private fun historyButton() =
itemContainingText(getStringResource(R.string.library_history))
private fun downloadsButton() =
itemContainingText(getStringResource(R.string.library_downloads))
+private fun passwordsButton() =
+ itemContainingText(getStringResource(R.string.browser_menu_passwords))
private fun addOnsButton() =
itemContainingText(getStringResource(R.string.browser_menu_extensions))
private fun desktopSiteButton() =
diff --git a/mobile/android/fenix/app/src/beta/res/xml/shortcuts.xml b/mobile/android/fenix/app/src/beta/res/xml/shortcuts.xml
index dcf89bab7b..2da32f3afe 100644
--- a/mobile/android/fenix/app/src/beta/res/xml/shortcuts.xml
+++ b/mobile/android/fenix/app/src/beta/res/xml/shortcuts.xml
@@ -8,8 +8,7 @@
android:shortcutId="password_manager"
android:enabled="true"
android:icon="@drawable/ic_static_password_shortcut"
- android:shortcutShortLabel="@string/home_screen_shortcut_passwords"
- android:shortcutLongLabel="@string/home_screen_shortcut_passwords">
+ android:shortcutShortLabel="@string/home_screen_shortcut_passwords">
<intent
android:action="org.mozilla.fenix.OPEN_PASSWORD_MANAGER"
android:targetPackage="org.mozilla.firefox_beta"
@@ -19,8 +18,7 @@
android:shortcutId="open_new_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_TAB"
android:targetPackage="org.mozilla.firefox_beta"
@@ -30,8 +28,7 @@
android:shortcutId="open_new_private_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_private_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_private_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_PRIVATE_TAB"
android:targetPackage="org.mozilla.firefox_beta"
diff --git a/mobile/android/fenix/app/src/debug/res/xml/shortcuts.xml b/mobile/android/fenix/app/src/debug/res/xml/shortcuts.xml
index a0af5e9191..42f365234c 100644
--- a/mobile/android/fenix/app/src/debug/res/xml/shortcuts.xml
+++ b/mobile/android/fenix/app/src/debug/res/xml/shortcuts.xml
@@ -8,8 +8,7 @@
android:shortcutId="password_manager"
android:enabled="true"
android:icon="@drawable/ic_static_password_shortcut"
- android:shortcutShortLabel="@string/home_screen_shortcut_passwords"
- android:shortcutLongLabel="@string/home_screen_shortcut_passwords">
+ android:shortcutShortLabel="@string/home_screen_shortcut_passwords">
<intent
android:action="org.mozilla.fenix.OPEN_PASSWORD_MANAGER"
android:targetPackage="org.mozilla.fenix.debug"
@@ -19,8 +18,7 @@
android:shortcutId="open_new_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_TAB"
android:targetPackage="org.mozilla.fenix.debug"
@@ -30,8 +28,7 @@
android:shortcutId="open_new_private_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_private_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_private_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_PRIVATE_TAB"
android:targetPackage="org.mozilla.fenix.debug"
diff --git a/mobile/android/fenix/app/src/main/assets/highRiskErrorPages.js b/mobile/android/fenix/app/src/main/assets/highRiskErrorPages.js
index f4af7d3b0d..f1fcd6d241 100644
--- a/mobile/android/fenix/app/src/main/assets/highRiskErrorPages.js
+++ b/mobile/android/fenix/app/src/main/assets/highRiskErrorPages.js
@@ -6,37 +6,39 @@
* Handles the parsing of the ErrorPages URI and then passes them to injectValues
*/
function parseQuery(queryString) {
- if (queryString[0] === '?') {
- queryString = queryString.substr(1);
- }
- const query = Object.fromEntries(new URLSearchParams(queryString).entries());
- injectValues(query);
-};
+ if (queryString[0] === "?") {
+ queryString = queryString.substr(1);
+ }
+ const query = Object.fromEntries(new URLSearchParams(queryString).entries());
+ injectValues(query);
+}
/**
* Updates the HTML elements based on the queryMap
*/
function injectValues(queryMap) {
- // Go through each element and inject the values
- document.title = queryMap.title;
- document.getElementById('errorTitleText').innerHTML = queryMap.title;
- document.getElementById('errorShortDesc').innerHTML = queryMap.description;
+ // Go through each element and inject the values
+ document.title = queryMap.title;
+ document.getElementById("errorTitleText").innerHTML = queryMap.title;
+ document.getElementById("errorShortDesc").innerHTML = queryMap.description;
- // If no image is passed in, remove the element so as not to leave an empty iframe
- const errorImage = document.getElementById('errorImage');
- if (!queryMap.image) {
- errorImage.remove();
- } else {
- errorImage.src = "resource://android/assets/" + queryMap.image;
- }
+ // If no image is passed in, remove the element so as not to leave an empty iframe
+ const errorImage = document.getElementById("errorImage");
+ if (!queryMap.image) {
+ errorImage.remove();
+ } else {
+ errorImage.src = "resource://android/assets/" + queryMap.image;
+ }
}
-document.addEventListener('DOMContentLoaded', function () {
- if (window.history.length == 1) {
- document.getElementById('backButton').style.display = 'none';
- } else {
- document.getElementById('backButton').addEventListener('click', () => window.history.back() );
- }
+document.addEventListener("DOMContentLoaded", function () {
+ if (window.history.length == 1) {
+ document.getElementById("backButton").style.display = "none";
+ } else {
+ document
+ .getElementById("backButton")
+ .addEventListener("click", () => window.history.back());
+ }
});
parseQuery(document.documentURI);
diff --git a/mobile/android/fenix/app/src/main/assets/high_risk_error_pages.html b/mobile/android/fenix/app/src/main/assets/high_risk_error_pages.html
index c73012b143..7f0e6e3fc6 100644
--- a/mobile/android/fenix/app/src/main/assets/high_risk_error_pages.html
+++ b/mobile/android/fenix/app/src/main/assets/high_risk_error_pages.html
@@ -8,7 +8,10 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width; user-scalable=false;" />
- <meta http-equiv="Content-Security-Policy" content="default-src resource:; object-src 'none'" />
+ <meta
+ http-equiv="Content-Security-Policy"
+ content="default-src resource:; object-src 'none'"
+ />
<link rel="stylesheet" type="text/css" href="shared_error_style.css" />
<link rel="stylesheet" type="text/css" href="high_risk_error_style.css" />
</head>
diff --git a/mobile/android/fenix/app/src/main/assets/lowMediumErrorPages.js b/mobile/android/fenix/app/src/main/assets/lowMediumErrorPages.js
index 760ce65868..23a3fe91b4 100644
--- a/mobile/android/fenix/app/src/main/assets/lowMediumErrorPages.js
+++ b/mobile/android/fenix/app/src/main/assets/lowMediumErrorPages.js
@@ -6,52 +6,56 @@
* Handles the parsing of the ErrorPages URI and then passes them to injectValues
*/
function parseQuery(queryString) {
- if (queryString[0] === '?') {
- queryString = queryString.substr(1);
- }
- const query = Object.fromEntries(new URLSearchParams(queryString).entries());
- injectValues(query);
- updateShowSSL(query);
- updateShowHSTS(query);
-};
+ if (queryString[0] === "?") {
+ queryString = queryString.substr(1);
+ }
+ const query = Object.fromEntries(new URLSearchParams(queryString).entries());
+ injectValues(query);
+ updateShowSSL(query);
+ updateShowHSTS(query);
+}
/**
* Updates the HTML elements based on the queryMap
*/
function injectValues(queryMap) {
- const tryAgainButton = document.getElementById('errorTryAgain');
- const continueHttpButton = document.getElementById("continueHttp");
- const backFromHttpButton = document.getElementById('backFromHttp');
+ const tryAgainButton = document.getElementById("errorTryAgain");
+ const continueHttpButton = document.getElementById("continueHttp");
+ const backFromHttpButton = document.getElementById("backFromHttp");
- // Go through each element and inject the values
- document.title = queryMap.title;
- tryAgainButton.innerHTML = queryMap.button;
- continueHttpButton.innerHTML = queryMap.continueHttpButton;
- backFromHttpButton.innerHTML = queryMap.badCertGoBack;
- document.getElementById('errorTitleText').innerHTML = queryMap.title;
- document.getElementById('errorShortDesc').innerHTML = queryMap.description;
- document.getElementById('advancedButton').innerHTML = queryMap.badCertAdvanced;
- document.getElementById('badCertTechnicalInfo').innerHTML = queryMap.badCertTechInfo;
- document.getElementById('advancedPanelBackButton').innerHTML = queryMap.badCertGoBack;
- document.getElementById('advancedPanelAcceptButton').innerHTML = queryMap.badCertAcceptTemporary;
+ // Go through each element and inject the values
+ document.title = queryMap.title;
+ tryAgainButton.innerHTML = queryMap.button;
+ continueHttpButton.innerHTML = queryMap.continueHttpButton;
+ backFromHttpButton.innerHTML = queryMap.badCertGoBack;
+ document.getElementById("errorTitleText").innerHTML = queryMap.title;
+ document.getElementById("errorShortDesc").innerHTML = queryMap.description;
+ document.getElementById("advancedButton").innerHTML =
+ queryMap.badCertAdvanced;
+ document.getElementById("badCertTechnicalInfo").innerHTML =
+ queryMap.badCertTechInfo;
+ document.getElementById("advancedPanelBackButton").innerHTML =
+ queryMap.badCertGoBack;
+ document.getElementById("advancedPanelAcceptButton").innerHTML =
+ queryMap.badCertAcceptTemporary;
- // If no image is passed in, remove the element so as not to leave an empty iframe
- const errorImage = document.getElementById('errorImage');
- if (!queryMap.image) {
- errorImage.remove();
- } else {
- errorImage.src = "resource://android/assets/" + queryMap.image;
- }
+ // If no image is passed in, remove the element so as not to leave an empty iframe
+ const errorImage = document.getElementById("errorImage");
+ if (!queryMap.image) {
+ errorImage.remove();
+ } else {
+ errorImage.src = "resource://android/assets/" + queryMap.image;
+ }
- if (queryMap.showContinueHttp === "true") {
- // On the "HTTPS-Only" error page "Try again" doesn't make sense since reloading the page
- // will just show an error page again.
- tryAgainButton.style.display = 'none';
- } else {
- continueHttpButton.style.display = 'none';
- backFromHttpButton.style.display = 'none';
- }
-};
+ if (queryMap.showContinueHttp === "true") {
+ // On the "HTTPS-Only" error page "Try again" doesn't make sense since reloading the page
+ // will just show an error page again.
+ tryAgainButton.style.display = "none";
+ } else {
+ continueHttpButton.style.display = "none";
+ backFromHttpButton.style.display = "none";
+ }
+}
let advancedVisible = false;
@@ -59,88 +63,98 @@ let advancedVisible = false;
* Used to show or hide the "accept" button based on the validity of the SSL certificate
*/
function updateShowSSL(queryMap) {
- /** @type {'true' | 'false'} */
- const showSSL = queryMap.showSSL;
- if (typeof document.addCertException === 'undefined') {
- document.getElementById('advancedButton').style.display='none';
+ /** @type {'true' | 'false'} */
+ const showSSL = queryMap.showSSL;
+ if (typeof document.addCertException === "undefined") {
+ document.getElementById("advancedButton").style.display = "none";
+ } else {
+ if (showSSL === "true") {
+ document.getElementById("advancedButton").style.display = "block";
} else {
- if (showSSL === 'true') {
- document.getElementById('advancedButton').style.display='block';
- } else {
- document.getElementById('advancedButton').style.display='none';
- }
+ document.getElementById("advancedButton").style.display = "none";
}
-};
+ }
+}
/**
* Used to show or hide the "accept" button based for the HSTS error page
*/
function updateShowHSTS(queryMap) {
- const showHSTS = queryMap.showHSTS;
- if (showHSTS === 'true') {
- document.getElementById('advancedButton').style.display='block';
- document.getElementById('advancedPanelAcceptButton').style.display='none';
- }
-};
+ const showHSTS = queryMap.showHSTS;
+ if (showHSTS === "true") {
+ document.getElementById("advancedButton").style.display = "block";
+ document.getElementById("advancedPanelAcceptButton").style.display = "none";
+ }
+}
/**
* Used to display information about the SSL certificate in `error_pages.html`
*/
function toggleAdvancedAndScroll() {
- const advancedPanel = document.getElementById('badCertAdvancedPanel');
- if (advancedVisible) {
- advancedPanel.style.display='none';
- } else {
- advancedPanel.style.display='block';
- }
- advancedVisible = !advancedVisible;
+ const advancedPanel = document.getElementById("badCertAdvancedPanel");
+ if (advancedVisible) {
+ advancedPanel.style.display = "none";
+ } else {
+ advancedPanel.style.display = "block";
+ }
+ advancedVisible = !advancedVisible;
- const horizontalLine = document.getElementById("horizontalLine");
- const advancedPanelAcceptButton = document.getElementById(
- "advancedPanelAcceptButton"
- );
- const badCertAdvancedPanel = document.getElementById(
- "badCertAdvancedPanel"
- );
+ const horizontalLine = document.getElementById("horizontalLine");
+ const advancedPanelAcceptButton = document.getElementById(
+ "advancedPanelAcceptButton"
+ );
+ const badCertAdvancedPanel = document.getElementById("badCertAdvancedPanel");
- // We know that the button is being displayed
- if (badCertAdvancedPanel.style.display === "block") {
- horizontalLine.hidden = false;
- advancedPanelAcceptButton.scrollIntoView({
- behavior: "smooth",
- block: "center",
- inline: "nearest",
- });
- } else {
- horizontalLine.hidden = true;
- }
-};
+ // We know that the button is being displayed
+ if (badCertAdvancedPanel.style.display === "block") {
+ horizontalLine.hidden = false;
+ advancedPanelAcceptButton.scrollIntoView({
+ behavior: "smooth",
+ block: "center",
+ inline: "nearest",
+ });
+ } else {
+ horizontalLine.hidden = true;
+ }
+}
/**
* Used to bypass an SSL pages in `error_pages.html`
*/
async function acceptAndContinue(temporary) {
- try {
- await document.addCertException(temporary);
- location.reload();
- } catch (error) {
- console.error("Unexpected error: " + error);
- }
-};
+ try {
+ await document.addCertException(temporary);
+ location.reload();
+ } catch (error) {
+ console.error("Unexpected error: " + error);
+ }
+}
-document.addEventListener('DOMContentLoaded', function () {
- if (window.history.length == 1) {
- document.getElementById('advancedPanelBackButton').style.display = 'none';
- document.getElementById('backFromHttp').style.display = 'none';
- } else {
- document.getElementById('advancedPanelBackButton').addEventListener('click', () => window.history.back());
- document.getElementById('backFromHttp').addEventListener('click', () => window.history.back());
- }
+document.addEventListener("DOMContentLoaded", function () {
+ if (window.history.length == 1) {
+ document.getElementById("advancedPanelBackButton").style.display = "none";
+ document.getElementById("backFromHttp").style.display = "none";
+ } else {
+ document
+ .getElementById("advancedPanelBackButton")
+ .addEventListener("click", () => window.history.back());
+ document
+ .getElementById("backFromHttp")
+ .addEventListener("click", () => window.history.back());
+ }
- document.getElementById('errorTryAgain').addEventListener('click', () => window.location.reload());
- document.getElementById('advancedButton').addEventListener('click', toggleAdvancedAndScroll);
- document.getElementById('advancedPanelAcceptButton').addEventListener('click', () => acceptAndContinue(true));
- document.getElementById('continueHttp').addEventListener('click', () => document.reloadWithHttpsOnlyException());
+ document
+ .getElementById("errorTryAgain")
+ .addEventListener("click", () => window.location.reload());
+ document
+ .getElementById("advancedButton")
+ .addEventListener("click", toggleAdvancedAndScroll);
+ document
+ .getElementById("advancedPanelAcceptButton")
+ .addEventListener("click", () => acceptAndContinue(true));
+ document
+ .getElementById("continueHttp")
+ .addEventListener("click", () => document.reloadWithHttpsOnlyException());
});
parseQuery(document.documentURI);
diff --git a/mobile/android/fenix/app/src/main/assets/low_and_medium_risk_error_pages.html b/mobile/android/fenix/app/src/main/assets/low_and_medium_risk_error_pages.html
index 62e0c70988..84d8800ea5 100644
--- a/mobile/android/fenix/app/src/main/assets/low_and_medium_risk_error_pages.html
+++ b/mobile/android/fenix/app/src/main/assets/low_and_medium_risk_error_pages.html
@@ -8,7 +8,10 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width; user-scalable=false;" />
- <meta http-equiv="Content-Security-Policy" content="default-src resource:; object-src 'none'" />
+ <meta
+ http-equiv="Content-Security-Policy"
+ content="default-src resource:; object-src 'none'"
+ />
<link rel="stylesheet" type="text/css" href="shared_error_style.css" />
<link
rel="stylesheet"
@@ -37,10 +40,7 @@
<button id="errorTryAgain"></button>
<!-- Advanced Button -->
- <button
- id="advancedButton"
- class="buttonSecondary hidden"
- ></button>
+ <button id="advancedButton" class="buttonSecondary hidden"></button>
<!-- "Go back" Button (For HTTPS-Only error page only) -->
<button id="backFromHttp"></button>
@@ -56,9 +56,7 @@
id="advancedPanelBackButtonContainer"
class="advancedPanelButtonContainer"
>
- <button
- id="advancedPanelBackButton"
- ></button>
+ <button id="advancedPanelBackButton"></button>
</div>
<div
id="advancedPanelAcceptButtonContainer"
@@ -76,7 +74,7 @@
<script type="text/javascript">
if (window.history.length == 1) {
- document.getElementById('advancedPanelBackButton').style.display = 'none';
+ document.getElementById("advancedPanelBackButton").style.display = "none";
}
function toggleAdvancedAndScroll() {
@@ -104,5 +102,5 @@
}
</script>
- <script src="./lowMediumErrorPages.js"></script>
+ <script src="./lowMediumErrorPages.js"></script>
</html>
diff --git a/mobile/android/fenix/app/src/main/assets/shared_error_style.css b/mobile/android/fenix/app/src/main/assets/shared_error_style.css
index 5753b00a78..fc6a109003 100644
--- a/mobile/android/fenix/app/src/main/assets/shared_error_style.css
+++ b/mobile/android/fenix/app/src/main/assets/shared_error_style.css
@@ -48,7 +48,6 @@ li:not(:last-of-type) {
}
h1 {
- margin: 0;
padding: 0;
margin: var(--moz-vertical-spacing) 0;
color: var(--header-color);
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt
index aa8a5250a7..4d4ce12330 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt
@@ -50,7 +50,7 @@ object FeatureFlags {
/**
* Enables compose on the tabs tray items.
*/
- val composeTabsTray = Config.channel.isNightlyOrDebug || Config.channel.isBeta
+ const val composeTabsTray = true
/**
* Enables compose on the top sites.
@@ -87,4 +87,9 @@ object FeatureFlags {
* Enables the menu redesign.
*/
const val menuRedesignEnabled = false
+
+ /**
+ * Enables microsurveys.
+ */
+ const val microsurveysEnabled = false
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
index 7c32c02f60..cd367fa467 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
@@ -206,10 +206,11 @@ open class FenixApplication : LocaleAwareApplication(), Provider {
lazy(LazyThreadSafetyMode.NONE) { components.core.client },
),
enableEventTimestamps = FxNimbus.features.glean.value().enableEventTimestamps,
+ delayPingLifetimeIo = FxNimbus.features.glean.value().delayPingLifetimeIo,
)
// Set the metric configuration from Nimbus.
- Glean.setMetricsEnabledConfig(FxNimbus.features.glean.value().metricsEnabled)
+ Glean.applyServerKnobsConfig(FxNimbus.features.glean.value().metricsEnabled)
Glean.initialize(
applicationContext = this,
@@ -870,7 +871,7 @@ open class FenixApplication : LocaleAwareApplication(), Provider {
disabledAds.set(!settings.isReviewQualityCheckProductRecommendationsEnabled)
}
- TabStrip.enabled.set(settings.isTabletAndTabStripEnabled)
+ TabStrip.enabled.set(settings.isTabStripEnabled)
}
@VisibleForTesting
@@ -991,7 +992,7 @@ open class FenixApplication : LocaleAwareApplication(), Provider {
// We break them out here so they can be recorded when
// `nimbus.applyPendingExperiments()` is called.
CustomizeHome.jumpBackIn.set(settings.showRecentTabsFeature)
- CustomizeHome.recentlySaved.set(settings.showRecentBookmarksFeature)
+ CustomizeHome.bookmarks.set(settings.showBookmarksHomeFeature)
CustomizeHome.mostVisitedSites.set(settings.showTopSitesFeature)
CustomizeHome.recentlyVisited.set(settings.historyMetadataUIFeature)
CustomizeHome.pocket.set(settings.showPocketRecommendationsFeature)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
index 1b17a97507..bf442fab37 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
@@ -115,6 +115,7 @@ import org.mozilla.fenix.home.intent.CrashReporterIntentProcessor
import org.mozilla.fenix.home.intent.HomeDeepLinkIntentProcessor
import org.mozilla.fenix.home.intent.OpenBrowserIntentProcessor
import org.mozilla.fenix.home.intent.OpenPasswordManagerIntentProcessor
+import org.mozilla.fenix.home.intent.OpenRecentlyClosedIntentProcessor
import org.mozilla.fenix.home.intent.OpenSpecificTabIntentProcessor
import org.mozilla.fenix.home.intent.ReEngagementIntentProcessor
import org.mozilla.fenix.home.intent.SpeechProcessingIntentProcessor
@@ -203,6 +204,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
OpenBrowserIntentProcessor(this, ::getIntentSessionId),
OpenSpecificTabIntentProcessor(this),
OpenPasswordManagerIntentProcessor(),
+ OpenRecentlyClosedIntentProcessor(),
ReEngagementIntentProcessor(this, settings()),
)
}
@@ -780,7 +782,16 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
private fun handleBackLongPress(): Boolean {
supportFragmentManager.primaryNavigationFragment?.childFragmentManager?.fragments?.forEach {
- if (it is OnBackLongPressedListener && it.onBackLongPressed()) {
+ if (it is OnLongPressedListener && it.onBackLongPressed()) {
+ return true
+ }
+ }
+ return false
+ }
+
+ private fun handleForwardLongPress(): Boolean {
+ supportFragmentManager.primaryNavigationFragment?.childFragmentManager?.fragments?.forEach {
+ if (it is OnLongPressedListener && it.onForwardLongPressed()) {
return true
}
}
@@ -805,9 +816,16 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
handleBackLongPress()
}
}
+
+ if (keyCode == KeyEvent.KEYCODE_FORWARD) {
+ event?.startTracking()
+ return true
+ }
+
return super.onKeyDown(keyCode, event)
}
+ @Suppress("ReturnCount")
final override fun onKeyUp(keyCode: Int, event: KeyEvent): Boolean {
if (shouldUseCustomBackLongPress() && keyCode == KeyEvent.KEYCODE_BACK) {
backLongPressJob?.cancel()
@@ -821,6 +839,20 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
return true
}
}
+
+ if (keyCode == KeyEvent.KEYCODE_FORWARD) {
+ if (navHost.navController.hasTopDestination(TabHistoryDialogFragment.NAME)) {
+ // returning true avoids further processing of the KeyUp event
+ return true
+ }
+
+ supportFragmentManager.primaryNavigationFragment?.childFragmentManager?.fragments?.forEach {
+ if (it is UserInteractionHandler && it.onForwardPressed()) {
+ return true
+ }
+ }
+ }
+
return super.onKeyUp(keyCode, event)
}
@@ -830,6 +862,11 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
if (!shouldUseCustomBackLongPress() && keyCode == KeyEvent.KEYCODE_BACK) {
return handleBackLongPress()
}
+
+ if (keyCode == KeyEvent.KEYCODE_FORWARD) {
+ return handleForwardLongPress()
+ }
+
return super.onKeyLongPress(keyCode, event)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/OnBackLongPressedListener.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/OnLongPressedListener.kt
index e47a0b71b4..711830bf72 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/OnBackLongPressedListener.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/OnLongPressedListener.kt
@@ -5,9 +5,9 @@
package org.mozilla.fenix
/**
- * Interface for features and fragments that want to handle long presses of the system back button
+ * Interface for features and fragments that want to handle long presses of the system back/forward button
*/
-interface OnBackLongPressedListener {
+interface OnLongPressedListener {
/**
* Called when the system back button is long pressed.
@@ -18,4 +18,11 @@ interface OnBackLongPressedListener {
* @return true if the event was handled
*/
fun onBackLongPressed(): Boolean
+
+ /**
+ * Called when the system forward button is long pressed.
+ *
+ * @return true if the event was handled
+ */
+ fun onForwardLongPressed(): Boolean
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/addons/AddonsManagementFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/addons/AddonsManagementFragment.kt
index 5eeeeedb3e..0198cb9653 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/addons/AddonsManagementFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/addons/AddonsManagementFragment.kt
@@ -40,6 +40,7 @@ import org.mozilla.fenix.ext.runIfFragmentIsAttached
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.ext.showToolbar
import org.mozilla.fenix.settings.SupportUtils
+import org.mozilla.fenix.settings.SupportUtils.AMO_HOMEPAGE_FOR_ANDROID
import org.mozilla.fenix.theme.ThemeManager
/**
@@ -264,11 +265,4 @@ class AddonsManagementFragment : Fragment(R.layout.fragment_add_ons_management)
from = BrowserDirection.FromAddonsManagementFragment,
)
}
-
- companion object {
- // This is locale-less on purpose so that the content negotiation happens on the AMO side because the current
- // user language might not be supported by AMO and/or the language might not be exactly what AMO is expecting
- // (e.g. `en` instead of `en-US`).
- private const val AMO_HOMEPAGE_FOR_ANDROID = "${BuildConfig.AMO_BASE_URL}/android/"
- }
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt
index d6e93e0043..2567021e7e 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt
@@ -115,25 +115,29 @@ import mozilla.components.support.ktx.android.view.hideKeyboard
import mozilla.components.support.ktx.kotlin.getOrigin
import mozilla.components.support.ktx.kotlinx.coroutines.flow.ifAnyChanged
import mozilla.components.support.locale.ActivityContextWrapper
+import mozilla.components.support.utils.ext.isLandscape
import mozilla.components.ui.widgets.withCenterAlignedButtons
import org.mozilla.fenix.BuildConfig
import org.mozilla.fenix.FeatureFlags
import org.mozilla.fenix.GleanMetrics.Events
+import org.mozilla.fenix.GleanMetrics.Logins
import org.mozilla.fenix.GleanMetrics.MediaState
import org.mozilla.fenix.GleanMetrics.NavigationBar
import org.mozilla.fenix.GleanMetrics.PullToRefreshInBrowser
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.IntentReceiverActivity
import org.mozilla.fenix.NavGraphDirections
-import org.mozilla.fenix.OnBackLongPressedListener
+import org.mozilla.fenix.OnLongPressedListener
import org.mozilla.fenix.R
import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.browser.readermode.DefaultReaderModeController
import org.mozilla.fenix.browser.tabstrip.TabStrip
+import org.mozilla.fenix.browser.tabstrip.isTabStripEnabled
import org.mozilla.fenix.components.FenixSnackbar
import org.mozilla.fenix.components.FindInPageIntegration
import org.mozilla.fenix.components.StoreProvider
import org.mozilla.fenix.components.appstate.AppAction
+import org.mozilla.fenix.components.menu.MenuAccessPoint
import org.mozilla.fenix.components.metrics.MetricsUtils
import org.mozilla.fenix.components.toolbar.BrowserFragmentState
import org.mozilla.fenix.components.toolbar.BrowserFragmentStore
@@ -165,6 +169,7 @@ import org.mozilla.fenix.ext.breadcrumb
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.getPreferenceKey
import org.mozilla.fenix.ext.hideToolbar
+import org.mozilla.fenix.ext.isTablet
import org.mozilla.fenix.ext.nav
import org.mozilla.fenix.ext.navigateWithBreadcrumb
import org.mozilla.fenix.ext.registerForActivityResult
@@ -173,6 +178,7 @@ import org.mozilla.fenix.ext.runIfFragmentIsAttached
import org.mozilla.fenix.ext.secure
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.ext.tabClosedUndoMessage
+import org.mozilla.fenix.ext.updateNavBarForConfigurationChange
import org.mozilla.fenix.home.HomeScreenViewModel
import org.mozilla.fenix.home.SharedViewModel
import org.mozilla.fenix.library.bookmarks.BookmarksSharedViewModel
@@ -201,7 +207,7 @@ abstract class BaseBrowserFragment :
Fragment(),
UserInteractionHandler,
ActivityResultHandler,
- OnBackLongPressedListener,
+ OnLongPressedListener,
AccessibilityManager.AccessibilityStateChangeListener {
private var _binding: FragmentBrowserBinding? = null
@@ -212,7 +218,9 @@ abstract class BaseBrowserFragment :
private lateinit var startForResult: ActivityResultLauncher<Intent>
private var _browserToolbarInteractor: BrowserToolbarInteractor? = null
- protected val browserToolbarInteractor: BrowserToolbarInteractor
+
+ @VisibleForTesting(otherwise = VisibleForTesting.PROTECTED)
+ internal val browserToolbarInteractor: BrowserToolbarInteractor
get() = _browserToolbarInteractor!!
@VisibleForTesting
@@ -269,6 +277,13 @@ abstract class BaseBrowserFragment :
private var currentStartDownloadDialog: StartDownloadDialog? = null
+ private lateinit var savedLoginsLauncher: ActivityResultLauncher<Intent>
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ savedLoginsLauncher = registerForActivityResult { navigateToSavedLoginsFragment() }
+ }
+
@CallSuper
override fun onCreateView(
inflater: LayoutInflater,
@@ -419,6 +434,7 @@ abstract class BaseBrowserFragment :
},
)
val browserToolbarMenuController = DefaultBrowserToolbarMenuController(
+ fragment = this,
store = store,
activity = activity,
navController = findNavController(),
@@ -439,7 +455,8 @@ abstract class BaseBrowserFragment :
tabCollectionStorage = requireComponents.core.tabCollectionStorage,
topSitesStorage = requireComponents.core.topSitesStorage,
pinnedSiteStorage = requireComponents.core.pinnedSiteStorage,
- browserStore = store,
+ onShowPinVerification = { intent -> savedLoginsLauncher.launch(intent) },
+ onBiometricAuthenticationSuccessful = { navigateToSavedLoginsFragment() },
)
_browserToolbarInteractor = DefaultBrowserToolbarInteractor(
@@ -485,7 +502,11 @@ abstract class BaseBrowserFragment :
},
)
- if (IncompleteRedesignToolbarFeature(context.settings()).isEnabled) {
+ // We don't show the navigation bar for tablets and in landscape mode.
+ val shouldAddNavigationBar = IncompleteRedesignToolbarFeature(context.settings()).isEnabled &&
+ !requireContext().isLandscape() &&
+ !isTablet()
+ if (shouldAddNavigationBar) {
initializeNavBar(
browserToolbar = browserToolbarView.view,
view = view,
@@ -756,6 +777,9 @@ abstract class BaseBrowserFragment :
loginValidationDelegate = DefaultLoginValidationDelegate(
context.components.core.lazyPasswordsStorage,
),
+ isLoginAutofillEnabled = {
+ context.settings().shouldAutofillLogins
+ },
isSaveLoginEnabled = {
context.settings().shouldPromptToSaveLogins
},
@@ -836,6 +860,7 @@ abstract class BaseBrowserFragment :
feature = SessionFeature(
requireComponents.core.store,
requireComponents.useCases.sessionUseCases.goBack,
+ requireComponents.useCases.sessionUseCases.goForward,
binding.engineView,
customTabSessionId,
),
@@ -1005,7 +1030,9 @@ abstract class BaseBrowserFragment :
)
initializeEngineView(
- topToolbarHeight = context.settings().getTopToolbarHeight(includeTabStrip = customTabSessionId == null),
+ topToolbarHeight = context.settings().getTopToolbarHeight(
+ includeTabStrip = customTabSessionId == null && context.isTabStripEnabled(),
+ ),
bottomToolbarHeight = bottomToolbarHeight,
)
}
@@ -1221,7 +1248,7 @@ abstract class BaseBrowserFragment :
topToolbarHeight = topToolbarHeight,
)
} else {
- val toolbarHeight = if (customTabSessionId == null && context.settings().isTabletAndTabStripEnabled) {
+ val toolbarHeight = if (customTabSessionId == null && context.isTabStripEnabled()) {
resources.getDimensionPixelSize(R.dimen.browser_toolbar_height) +
resources.getDimensionPixelSize(R.dimen.tab_strip_height)
} else {
@@ -1348,7 +1375,9 @@ abstract class BaseBrowserFragment :
onMenuButtonClick = {
findNavController().nav(
R.id.browserFragment,
- BrowserFragmentDirections.actionGlobalMenuDialogFragment(),
+ BrowserFragmentDirections.actionGlobalMenuDialogFragment(
+ accesspoint = MenuAccessPoint.Browser,
+ ),
)
},
)
@@ -1513,6 +1542,11 @@ abstract class BaseBrowserFragment :
removeSessionIfNeeded()
}
+ @CallSuper
+ override fun onForwardPressed(): Boolean {
+ return sessionFeature.onForwardPressed()
+ }
+
/**
* Forwards activity results to the [ActivityResultHandler] features.
*/
@@ -1523,12 +1557,24 @@ abstract class BaseBrowserFragment :
).any { it.onActivityResult(requestCode, data, resultCode) }
}
- override fun onBackLongPressed(): Boolean {
+ /**
+ * Navigate to GlobalTabHistoryDialogFragment.
+ */
+ private fun navigateToGlobalTabHistoryDialogFragment() {
findNavController().navigate(
NavGraphDirections.actionGlobalTabHistoryDialogFragment(
activeSessionId = customTabSessionId,
),
)
+ }
+
+ override fun onBackLongPressed(): Boolean {
+ navigateToGlobalTabHistoryDialogFragment()
+ return true
+ }
+
+ override fun onForwardLongPressed(): Boolean {
+ navigateToGlobalTabHistoryDialogFragment()
return true
}
@@ -1773,7 +1819,7 @@ abstract class BaseBrowserFragment :
browserToolbarView.visible()
initializeEngineView(
topToolbarHeight = requireContext().settings().getTopToolbarHeight(
- includeTabStrip = customTabSessionId == null,
+ includeTabStrip = customTabSessionId == null && requireContext().isTabStripEnabled(),
),
bottomToolbarHeight = requireContext().settings().getBottomToolbarHeight(),
)
@@ -1787,6 +1833,27 @@ abstract class BaseBrowserFragment :
@CallSuper
internal open fun onUpdateToolbarForConfigurationChange(toolbar: BrowserToolbarView) {
toolbar.dismissMenu()
+
+ // If the navbar feature could be visible, we should update it's state.
+ val shouldUpdateNavBarState =
+ IncompleteRedesignToolbarFeature(requireContext().settings()).isEnabled && !isTablet()
+ if (shouldUpdateNavBarState) {
+ updateNavBarForConfigurationChange(
+ parent = binding.browserLayout,
+ toolbarView = browserToolbarView.view,
+ bottomToolbarContainerView = _bottomToolbarContainerView?.toolbarContainerView,
+ reinitializeNavBar = ::reinitializeNavBar,
+ )
+ }
+ }
+
+ private fun reinitializeNavBar() {
+ initializeNavBar(
+ browserToolbar = browserToolbarView.view,
+ view = requireView(),
+ context = requireContext(),
+ activity = requireActivity() as HomeActivity,
+ )
}
/*
@@ -1939,4 +2006,13 @@ abstract class BaseBrowserFragment :
}
}
}
+
+ private fun navigateToSavedLoginsFragment() {
+ val navController = findNavController()
+ if (navController.currentDestination?.id == R.id.browserFragment) {
+ Logins.openLogins.record(NoExtras())
+ val directions = BrowserFragmentDirections.actionLoginsListFragment()
+ navController.navigate(directions)
+ }
+ }
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
index 325d537220..89929ed7d1 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
@@ -34,11 +34,14 @@ import mozilla.components.feature.tabs.WindowFeature
import mozilla.components.service.glean.private.NoExtras
import mozilla.components.support.base.feature.UserInteractionHandler
import mozilla.components.support.base.feature.ViewBoundFeatureWrapper
+import mozilla.components.support.utils.ext.isLandscape
+import org.mozilla.fenix.FeatureFlags
import org.mozilla.fenix.GleanMetrics.AddressToolbar
import org.mozilla.fenix.GleanMetrics.ReaderMode
import org.mozilla.fenix.GleanMetrics.Shopping
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
+import org.mozilla.fenix.browser.tabstrip.isTabStripEnabled
import org.mozilla.fenix.components.FenixSnackbar
import org.mozilla.fenix.components.TabCollectionStorage
import org.mozilla.fenix.components.appstate.AppAction
@@ -51,6 +54,8 @@ import org.mozilla.fenix.ext.requireComponents
import org.mozilla.fenix.ext.runIfFragmentIsAttached
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.home.HomeFragment
+import org.mozilla.fenix.messaging.FenixMessageSurfaceId
+import org.mozilla.fenix.messaging.MessagingFeature
import org.mozilla.fenix.nimbus.FxNimbus
import org.mozilla.fenix.settings.quicksettings.protections.cookiebanners.getCookieBannerUIMode
import org.mozilla.fenix.shopping.DefaultShoppingExperienceFeature
@@ -72,12 +77,17 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
private val reviewQualityCheckFeature = ViewBoundFeatureWrapper<ReviewQualityCheckFeature>()
private val translationsBinding = ViewBoundFeatureWrapper<TranslationsBinding>()
+ @VisibleForTesting
+ internal val messagingFeature = ViewBoundFeatureWrapper<MessagingFeature>()
+
private var readerModeAvailable = false
private var reviewQualityCheckAvailable = false
private var translationsAvailable = false
private var pwaOnboardingObserver: PwaOnboardingObserver? = null
+ @VisibleForTesting
+ internal var leadingAction: BrowserToolbar.Button? = null
private var forwardAction: BrowserToolbar.TwoStateButton? = null
private var backAction: BrowserToolbar.TwoStateButton? = null
private var refreshAction: BrowserToolbar.TwoStateButton? = null
@@ -89,9 +99,8 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
val context = requireContext()
val components = context.components
- val isTabletAndTabStripEnabled = context.settings().isTabletAndTabStripEnabled
- if (!isTabletAndTabStripEnabled && context.settings().isSwipeToolbarToSwitchTabsEnabled) {
+ if (!context.isTabStripEnabled() && context.settings().isSwipeToolbarToSwitchTabsEnabled) {
binding.gestureLayout.addGestureListener(
ToolbarGestureHandler(
activity = requireActivity(),
@@ -107,15 +116,14 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
)
}
- if (!IncompleteRedesignToolbarFeature(context.settings()).isEnabled) {
- val isPrivate = (activity as HomeActivity).browsingModeManager.mode.isPrivate
- initLeadingAction(
- context = context,
- isPrivate = isPrivate,
- )
- }
-
- updateToolbarActions(isTablet = resources.getBoolean(R.bool.tablet))
+ updateBrowserToolbarLeadingAndNavigationActions(
+ context = context,
+ redesignEnabled = IncompleteRedesignToolbarFeature(context.settings()).isEnabled,
+ isLandscape = context.isLandscape(),
+ isTablet = resources.getBoolean(R.bool.tablet),
+ isPrivate = (activity as HomeActivity).browsingModeManager.mode.isPrivate,
+ feltPrivateBrowsingEnabled = context.settings().feltPrivateBrowsingEnabled,
+ )
val readerModeAction =
BrowserToolbar.ToggleButton(
@@ -210,6 +218,22 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
)
setTranslationFragmentResultListener()
+
+ setupMicrosurvey()
+ }
+
+ @VisibleForTesting
+ internal fun setupMicrosurvey(isMicrosurveyEnabled: Boolean = FeatureFlags.microsurveysEnabled) {
+ if (requireContext().settings().isExperimentationEnabled && isMicrosurveyEnabled) {
+ messagingFeature.set(
+ feature = MessagingFeature(
+ appStore = requireComponents.appStore,
+ surface = FenixMessageSurfaceId.MICROSURVEY,
+ ),
+ owner = viewLifecycleOwner,
+ view = binding.root,
+ )
+ }
}
private fun setTranslationFragmentResultListener() {
@@ -310,7 +334,7 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
}
private fun initReloadAction(context: Context) {
- if (!IncompleteRedesignToolbarFeature(context.settings()).isEnabled || refreshAction != null) {
+ if (!IncompleteRedesignToolbarFeature(context.settings()).isEnabled) {
return
}
@@ -412,43 +436,138 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
}
// Adds a home button to BrowserToolbar or, if FeltPrivateBrowsing is enabled, a clear data button instead.
- private fun initLeadingAction(
+ @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+ internal fun addLeadingAction(
context: Context,
+ feltPrivateBrowsingEnabled: Boolean,
isPrivate: Boolean,
) {
- val leadingAction = if (isPrivate && context.settings().feltPrivateBrowsingEnabled) {
- BrowserToolbar.Button(
- imageDrawable = AppCompatResources.getDrawable(
- context,
- R.drawable.mozac_ic_data_clearance_24,
- )!!,
- contentDescription = context.getString(R.string.browser_toolbar_erase),
- iconTintColorResource = ThemeManager.resolveAttribute(R.attr.textPrimary, context),
- listener = browserToolbarInteractor::onEraseButtonClicked,
+ if (leadingAction == null) {
+ leadingAction = if (isPrivate && feltPrivateBrowsingEnabled) {
+ BrowserToolbar.Button(
+ imageDrawable = AppCompatResources.getDrawable(
+ context,
+ R.drawable.mozac_ic_data_clearance_24,
+ )!!,
+ contentDescription = context.getString(R.string.browser_toolbar_erase),
+ iconTintColorResource = ThemeManager.resolveAttribute(R.attr.textPrimary, context),
+ listener = browserToolbarInteractor::onEraseButtonClicked,
+ )
+ } else {
+ BrowserToolbar.Button(
+ imageDrawable = AppCompatResources.getDrawable(
+ context,
+ R.drawable.mozac_ic_home_24,
+ )!!,
+ contentDescription = context.getString(R.string.browser_toolbar_home),
+ iconTintColorResource = ThemeManager.resolveAttribute(R.attr.textPrimary, context),
+ listener = browserToolbarInteractor::onHomeButtonClicked,
+ )
+ }.also {
+ browserToolbarView.view.addNavigationAction(it)
+ }
+ }
+ }
+
+ @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+ internal fun removeLeadingAction() {
+ leadingAction?.let {
+ browserToolbarView.view.removeNavigationAction(it)
+ }
+ leadingAction = null
+ }
+
+ /**
+ * This code takes care of the [BrowserToolbar] leading and navigation actions.
+ * The older design requires a HomeButton followed by navigation buttons for tablets.
+ * The newer design expects NavigationButtons and a HomeButton in landscape mode for phones and in both modes
+ * for tablets.
+ */
+ @VisibleForTesting
+ internal fun updateBrowserToolbarLeadingAndNavigationActions(
+ context: Context,
+ redesignEnabled: Boolean,
+ isLandscape: Boolean,
+ isTablet: Boolean,
+ isPrivate: Boolean,
+ feltPrivateBrowsingEnabled: Boolean,
+ ) {
+ if (redesignEnabled) {
+ updateAddressBarNavigationActions(
+ isLandscape = isLandscape,
+ isTablet = isTablet,
+ context = context,
+ )
+ updateAddressBarLeadingAction(
+ redesignEnabled = true,
+ isLandscape = isLandscape,
+ isTablet = isTablet,
+ isPrivate = isPrivate,
+ feltPrivateBrowsingEnabled = feltPrivateBrowsingEnabled,
+ context = context,
)
} else {
- BrowserToolbar.Button(
- imageDrawable = AppCompatResources.getDrawable(
- context,
- R.drawable.mozac_ic_home_24,
- )!!,
- contentDescription = context.getString(R.string.browser_toolbar_home),
- iconTintColorResource = ThemeManager.resolveAttribute(R.attr.textPrimary, context),
- listener = browserToolbarInteractor::onHomeButtonClicked,
+ updateAddressBarLeadingAction(
+ redesignEnabled = false,
+ isLandscape = isLandscape,
+ isPrivate = isPrivate,
+ isTablet = isTablet,
+ feltPrivateBrowsingEnabled = feltPrivateBrowsingEnabled,
+ context = context,
)
+ updateTabletToolbarActions(isTablet = isTablet)
}
+ browserToolbarView.view.invalidateActions()
+ }
- browserToolbarView.view.addNavigationAction(leadingAction)
+ @VisibleForTesting
+ internal fun updateAddressBarLeadingAction(
+ redesignEnabled: Boolean,
+ isLandscape: Boolean,
+ isTablet: Boolean,
+ isPrivate: Boolean,
+ feltPrivateBrowsingEnabled: Boolean,
+ context: Context,
+ ) {
+ if (!redesignEnabled || isLandscape || isTablet) {
+ addLeadingAction(
+ isPrivate = isPrivate,
+ feltPrivateBrowsingEnabled = feltPrivateBrowsingEnabled,
+ context = context,
+ )
+ } else {
+ removeLeadingAction()
+ }
+ }
+
+ @VisibleForTesting
+ internal fun updateAddressBarNavigationActions(
+ context: Context,
+ isLandscape: Boolean,
+ isTablet: Boolean,
+ ) {
+ if (isLandscape || isTablet) {
+ addNavigationActions(context)
+ } else {
+ removeNavigationActions()
+ }
}
override fun onUpdateToolbarForConfigurationChange(toolbar: BrowserToolbarView) {
super.onUpdateToolbarForConfigurationChange(toolbar)
- updateToolbarActions(isTablet = resources.getBoolean(R.bool.tablet))
+ updateBrowserToolbarLeadingAndNavigationActions(
+ context = requireContext(),
+ redesignEnabled = IncompleteRedesignToolbarFeature(requireContext().settings()).isEnabled,
+ isLandscape = requireContext().isLandscape(),
+ isTablet = resources.getBoolean(R.bool.tablet),
+ isPrivate = (activity as HomeActivity).browsingModeManager.mode.isPrivate,
+ feltPrivateBrowsingEnabled = requireContext().settings().feltPrivateBrowsingEnabled,
+ )
}
@VisibleForTesting
- internal fun updateToolbarActions(isTablet: Boolean) {
+ internal fun updateTabletToolbarActions(isTablet: Boolean) {
if (isTablet == this.isTablet) return
if (isTablet) {
@@ -460,8 +579,8 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
this.isTablet = isTablet
}
- @Suppress("LongMethod")
- private fun addTabletActions(context: Context) {
+ @VisibleForTesting
+ internal fun addNavigationActions(context: Context) {
val enableTint = ThemeManager.resolveAttribute(R.attr.textPrimary, context)
val disableTint = ThemeManager.resolveAttribute(R.attr.textDisabled, context)
@@ -486,11 +605,9 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
ToolbarMenu.Item.Back(viewHistory = false),
)
},
- )
- }
-
- backAction?.let {
- browserToolbarView.view.addNavigationAction(it)
+ ).also {
+ browserToolbarView.view.addNavigationAction(it)
+ }
}
if (forwardAction == null) {
@@ -514,13 +631,17 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
ToolbarMenu.Item.Forward(viewHistory = false),
)
},
- )
+ ).also {
+ browserToolbarView.view.addNavigationAction(it)
+ }
}
+ }
- forwardAction?.let {
- browserToolbarView.view.addNavigationAction(it)
- }
+ @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+ internal fun addTabletActions(context: Context) {
+ addNavigationActions(context)
+ val enableTint = ThemeManager.resolveAttribute(R.attr.textPrimary, context)
if (refreshAction == null) {
refreshAction = BrowserToolbar.TwoStateButton(
primaryImage = AppCompatResources.getDrawable(
@@ -552,28 +673,31 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
)
}
},
- )
- }
-
- refreshAction?.let {
- browserToolbarView.view.addNavigationAction(it)
+ ).also {
+ browserToolbarView.view.addNavigationAction(it)
+ }
}
-
- browserToolbarView.view.invalidateActions()
}
- private fun removeTabletActions() {
+ @VisibleForTesting
+ internal fun removeNavigationActions() {
forwardAction?.let {
browserToolbarView.view.removeNavigationAction(it)
}
+ forwardAction = null
backAction?.let {
browserToolbarView.view.removeNavigationAction(it)
}
+ backAction = null
+ }
+
+ @VisibleForTesting
+ internal fun removeTabletActions() {
+ removeNavigationActions()
+
refreshAction?.let {
browserToolbarView.view.removeNavigationAction(it)
}
-
- browserToolbarView.view.invalidateActions()
}
override fun onStart() {
@@ -607,6 +731,10 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler {
override fun onDestroyView() {
super.onDestroyView()
isTablet = false
+ leadingAction = null
+ forwardAction = null
+ backAction = null
+ refreshAction = null
}
private fun updateHistoryMetadata() {
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/StandardSnackbarErrorBinding.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/StandardSnackbarErrorBinding.kt
index 80fbcd61b9..c103e22026 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/StandardSnackbarErrorBinding.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/StandardSnackbarErrorBinding.kt
@@ -59,7 +59,7 @@ class StandardSnackbarErrorBinding(
snackBar.setSnackBarTextColor(
ContextCompat.getColor(
activity,
- R.color.fx_mobile_text_color_warning,
+ R.color.fx_mobile_text_color_critical,
),
)
snackBar.setAction(
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/SwipeGestureLayout.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/SwipeGestureLayout.kt
index a661d1ea1c..e2d36bffed 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/SwipeGestureLayout.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/SwipeGestureLayout.kt
@@ -10,7 +10,6 @@ import android.util.AttributeSet
import android.view.GestureDetector
import android.view.MotionEvent
import android.widget.FrameLayout
-import androidx.core.view.GestureDetectorCompat
/**
* Interface that allows intercepting and handling swipe gestures received in a [SwipeGestureLayout].
@@ -101,7 +100,7 @@ class SwipeGestureLayout @JvmOverloads constructor(
}
}
- private val gestureDetector = GestureDetectorCompat(context, gestureListener)
+ private val gestureDetector = GestureDetector(context, gestureListener)
private val listeners = mutableListOf<SwipeGestureListener>()
private var activeListener: SwipeGestureListener? = null
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/TabPreview.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/TabPreview.kt
index 42b6924955..cc855c9fa2 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/TabPreview.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/TabPreview.kt
@@ -110,7 +110,9 @@ class TabPreview @JvmOverloads constructor(
},
)
- removeView(binding.fakeToolbar)
+ if (!isToolbarAtTop) {
+ removeView(binding.fakeToolbar)
+ }
}
// Change view properties to avoid confusing the UI tests
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/tabstrip/TabStripFeatureFlag.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/tabstrip/TabStripFeatureFlag.kt
new file mode 100644
index 0000000000..faeb5446f5
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/tabstrip/TabStripFeatureFlag.kt
@@ -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/. */
+
+package org.mozilla.fenix.browser.tabstrip
+
+import android.content.Context
+import android.content.pm.PackageManager
+import android.os.Build
+import org.mozilla.fenix.Config
+import org.mozilla.fenix.ext.isTablet
+import org.mozilla.fenix.ext.settings
+
+/**
+ * Returns true if the tab strip is enabled.
+ */
+fun Context.isTabStripEnabled(): Boolean =
+ isTabStripEligible() && settings().isTabStripEnabled
+
+/**
+ * Returns true if the the device has the prerequisites to enable the tab strip.
+ */
+fun Context.isTabStripEligible(): Boolean =
+ Config.channel.isNightlyOrDebug && isTablet() && !doesDeviceHaveHinge()
+
+/**
+ * Check if the device has a hinge sensor.
+ */
+private fun Context.doesDeviceHaveHinge(): Boolean =
+ Build.VERSION.SDK_INT >= Build.VERSION_CODES.R &&
+ packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_HINGE_ANGLE)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt
index fcd624eec8..099b24a744 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt
@@ -19,6 +19,7 @@ import mozilla.components.concept.sync.DeviceCapability
import mozilla.components.concept.sync.DeviceConfig
import mozilla.components.concept.sync.DeviceType
import mozilla.components.concept.sync.OAuthAccount
+import mozilla.components.feature.accounts.push.CloseTabsFeature
import mozilla.components.feature.accounts.push.FxaPushSupportFeature
import mozilla.components.feature.accounts.push.SendTabFeature
import mozilla.components.feature.syncedtabs.SyncedTabsAutocompleteProvider
@@ -84,7 +85,12 @@ class BackgroundServices(
// NB: flipping this flag back and worth is currently not well supported and may need hand-holding.
// Consult with the android-components peers before changing.
// See https://github.com/mozilla/application-services/issues/1308
- capabilities = setOf(DeviceCapability.SEND_TAB),
+ capabilities = buildSet {
+ add(DeviceCapability.SEND_TAB)
+ if (context.settings().enableCloseSyncedTabs) {
+ add(DeviceCapability.CLOSE_TABS)
+ }
+ },
// Enable encryption for account state on supported API levels (23+).
// Just on Nightly and local builds for now.
@@ -194,6 +200,12 @@ class BackgroundServices(
notificationManager.showReceivedTabs(context, device, tabs)
}
+ if (context.settings().enableCloseSyncedTabs) {
+ CloseTabsFeature(context.components.core.store, accountManager) { _, remotelyClosedUrls ->
+ notificationManager.showSyncedTabsClosed(context, remotelyClosedUrls.size)
+ }.observe()
+ }
+
SyncedTabsIntegration(context, accountManager).launch()
syncStoreSupport = SyncStoreSupport(syncStore, lazyOf(accountManager)).also {
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Components.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Components.kt
index 0f6f107df1..35c18e98ea 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Components.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Components.kt
@@ -202,7 +202,7 @@ class Components(private val context: Context) {
collections = core.tabCollectionStorage.cachedTabCollections,
expandedCollections = emptySet(),
topSites = core.topSitesStorage.cachedTopSites.sort(),
- recentBookmarks = emptyList(),
+ bookmarks = emptyList(),
showCollectionPlaceholder = settings.showCollectionsPlaceholderOnHome,
// Provide an initial state for recent tabs to prevent re-rendering on the home screen.
// This will otherwise cause a visual jump as the section gets rendered from no state
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NotificationManager.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NotificationManager.kt
index 426019b8eb..9ed2abdcae 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NotificationManager.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NotificationManager.kt
@@ -17,11 +17,15 @@ import android.os.Build.VERSION.SDK_INT
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import androidx.core.content.getSystemService
+import androidx.core.os.bundleOf
import mozilla.components.concept.sync.Device
import mozilla.components.concept.sync.TabData
+import mozilla.components.support.base.ids.SharedIdsHelper
import mozilla.components.support.base.log.logger.Logger
+import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.IntentReceiverActivity
import org.mozilla.fenix.R
+import org.mozilla.fenix.home.intent.OpenRecentlyClosedIntentProcessor
import org.mozilla.fenix.utils.IntentUtils
/**
@@ -29,6 +33,9 @@ import org.mozilla.fenix.utils.IntentUtils
*/
class NotificationManager(private val context: Context) {
companion object {
+ const val TABS_CLOSED_TAG = "TabsClosed"
+ const val TOTAL_TABS_CLOSED_EXTRA = "org.mozilla.fenix.TOTAL_TABS_CLOSED_EXTRA"
+ const val TABS_CLOSED_NOTIFICATION_TAG = "org.mozilla.fenix.TABS_CLOSED_NOTIFICATION_TAG"
const val RECEIVE_TABS_TAG = "ReceivedTabs"
const val RECEIVE_TABS_CHANNEL_ID = "ReceivedTabsChannel"
}
@@ -51,6 +58,73 @@ class NotificationManager(private val context: Context) {
private val logger = Logger("NotificationManager")
+ /**
+ * Notifies the user that one or more tabs on this device were closed from another device.
+ *
+ * @param context The Android application context.
+ * @param count The number of tabs that were closed.
+ */
+ fun showSyncedTabsClosed(context: Context, count: Int) {
+ if (count <= 0) {
+ return
+ }
+ val notificationManagerCompat = NotificationManagerCompat.from(context)
+ val (notificationId, totalCount) = if (SDK_INT >= Build.VERSION_CODES.M) {
+ // On Android M (released in 2015) and later, we can retrieve
+ // the last notification from `allNotifications`. If one exists,
+ // we'll update its contents in-place with the new total number of
+ // closed tabs.
+ val notificationId = SharedIdsHelper.getIdForTag(context, TABS_CLOSED_NOTIFICATION_TAG)
+ val lastNotification = notificationManagerCompat.activeNotifications.find {
+ it.tag == TABS_CLOSED_TAG && it.id == notificationId
+ }
+ val lastTotalCount = lastNotification?.notification?.extras?.getInt(TOTAL_TABS_CLOSED_EXTRA) ?: 0
+ Pair(notificationId, lastTotalCount + count)
+ } else {
+ // Pre-M doesn't have `activeNotifications`, so we'll show
+ // a new notification for each call to `showSyncedTabsClosed`.
+ val notificationId = SharedIdsHelper.getNextIdForTag(context, TABS_CLOSED_NOTIFICATION_TAG)
+ Pair(notificationId, count)
+ }
+
+ val notification = NotificationCompat.Builder(context, RECEIVE_TABS_CHANNEL_ID).apply {
+ val title = context.resources.getString(
+ R.string.fxa_tabs_closed_notification_title,
+ context.resources.getString(R.string.app_name),
+ totalCount,
+ )
+ setContentTitle(title)
+
+ val text = context.resources.getString(R.string.fxa_tabs_closed_text)
+ setContentText(text)
+
+ val intent = Intent(context, HomeActivity::class.java).apply {
+ action = OpenRecentlyClosedIntentProcessor.ACTION_OPEN_RECENTLY_CLOSED
+ }
+ val pendingIntent = PendingIntent.getActivity(
+ context,
+ 0,
+ intent,
+ IntentUtils.defaultIntentPendingFlags or PendingIntent.FLAG_UPDATE_CURRENT,
+ )
+ setContentIntent(pendingIntent)
+
+ val extras = bundleOf(TOTAL_TABS_CLOSED_EXTRA to totalCount)
+ addExtras(extras)
+
+ setSmallIcon(R.drawable.ic_status_logo)
+ setWhen(System.currentTimeMillis())
+ setAutoCancel(true)
+ setDefaults(Notification.DEFAULT_VIBRATE or Notification.DEFAULT_SOUND)
+
+ if (SDK_INT >= Build.VERSION_CODES.M) {
+ setCategory(Notification.CATEGORY_STATUS)
+ }
+ }.build()
+
+ notificationManagerCompat.notify(TABS_CLOSED_TAG, notificationId, notification)
+ }
+
fun showReceivedTabs(context: Context, device: Device?, tabs: List<TabData>) {
// In the future, experiment with displaying multiple tabs from the same device as as Notification Groups.
// For now, a single notification per tab received will suffice.
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppAction.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppAction.kt
index dbdeb831ed..f813ad33bd 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppAction.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppAction.kt
@@ -17,9 +17,9 @@ import org.mozilla.fenix.browser.StandardSnackbarError
import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.components.AppStore
import org.mozilla.fenix.components.appstate.shopping.ShoppingState
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesCategory
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesSelectedCategory
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTab
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTabState
import org.mozilla.fenix.home.recenttabs.RecentTab
@@ -54,7 +54,7 @@ sealed class AppAction : Action {
val collections: List<TabCollection>,
val showCollectionPlaceholder: Boolean,
val recentTabs: List<RecentTab>,
- val recentBookmarks: List<RecentBookmark>,
+ val bookmarks: List<Bookmark>,
val recentHistory: List<RecentlyVisitedItem>,
val recentSyncedTabState: RecentSyncedTabState,
) :
@@ -68,8 +68,16 @@ sealed class AppAction : Action {
data class TopSitesChange(val topSites: List<TopSite>) : AppAction()
data class RecentTabsChange(val recentTabs: List<RecentTab>) : AppAction()
data class RemoveRecentTab(val recentTab: RecentTab) : AppAction()
- data class RecentBookmarksChange(val recentBookmarks: List<RecentBookmark>) : AppAction()
- data class RemoveRecentBookmark(val recentBookmark: RecentBookmark) : AppAction()
+
+ /**
+ * The list of bookmarks displayed on the home screen has changed.
+ */
+ data class BookmarksChange(val bookmarks: List<Bookmark>) : AppAction()
+
+ /**
+ * A bookmark has been removed from the home screen.
+ */
+ data class RemoveBookmark(val bookmark: Bookmark) : AppAction()
data class RecentHistoryChange(val recentHistory: List<RecentlyVisitedItem>) : AppAction()
data class RemoveRecentHistoryHighlight(val highlightUrl: String) : AppAction()
data class DisbandSearchGroupAction(val searchTerm: String) : AppAction()
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppState.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppState.kt
index e118dca121..dc3a1b368a 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppState.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppState.kt
@@ -16,9 +16,9 @@ import org.mozilla.fenix.browser.StandardSnackbarError
import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.components.appstate.shopping.ShoppingState
import org.mozilla.fenix.home.HomeFragment
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesCategory
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesSelectedCategory
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTabState
import org.mozilla.fenix.home.recenttabs.RecentTab
import org.mozilla.fenix.home.recentvisits.RecentlyVisitedItem
@@ -45,7 +45,7 @@ import org.mozilla.fenix.wallpapers.WallpaperState
* @property showCollectionPlaceholder If true, shows a placeholder when there are no collections.
* @property recentTabs The list of recent [RecentTab] in the [HomeFragment].
* @property recentSyncedTabState The [RecentSyncedTabState] in the [HomeFragment].
- * @property recentBookmarks The list of recently saved [BookmarkNode]s to show on the [HomeFragment].
+ * @property bookmarks The list of recently saved [BookmarkNode]s to show on the [HomeFragment].
* @property recentHistory The list of [RecentlyVisitedItem]s.
* @property pocketStories The list of currently shown [PocketRecommendedStory]s.
* @property pocketStoriesCategories All [PocketRecommendedStory] categories.
@@ -75,7 +75,7 @@ data class AppState(
val showCollectionPlaceholder: Boolean = false,
val recentTabs: List<RecentTab> = emptyList(),
val recentSyncedTabState: RecentSyncedTabState = RecentSyncedTabState.None,
- val recentBookmarks: List<RecentBookmark> = emptyList(),
+ val bookmarks: List<Bookmark> = emptyList(),
val recentHistory: List<RecentlyVisitedItem> = emptyList(),
val pocketStories: List<PocketStory> = emptyList(),
val pocketStoriesCategories: List<PocketRecommendedStoriesCategory> = emptyList(),
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppStoreReducer.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppStoreReducer.kt
index a614689982..1092de97f0 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppStoreReducer.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/appstate/AppStoreReducer.kt
@@ -43,7 +43,7 @@ internal object AppStoreReducer {
collections = action.collections,
mode = action.mode,
topSites = action.topSites,
- recentBookmarks = action.recentBookmarks,
+ bookmarks = action.bookmarks,
recentTabs = action.recentTabs,
recentHistory = action.recentHistory,
recentSyncedTabState = action.recentSyncedTabState,
@@ -81,9 +81,9 @@ internal object AppStoreReducer {
recentSyncedTabState = action.state,
)
}
- is AppAction.RecentBookmarksChange -> state.copy(recentBookmarks = action.recentBookmarks)
- is AppAction.RemoveRecentBookmark -> {
- state.copy(recentBookmarks = state.recentBookmarks.filterNot { it.url == action.recentBookmark.url })
+ is AppAction.BookmarksChange -> state.copy(bookmarks = action.bookmarks)
+ is AppAction.RemoveBookmark -> {
+ state.copy(bookmarks = state.bookmarks.filterNot { it.url == action.bookmark.url })
}
is AppAction.RecentHistoryChange -> state.copy(
recentHistory = action.recentHistory,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCase.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCase.kt
index f8ea604c34..986b4ba3b9 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCase.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCase.kt
@@ -9,7 +9,7 @@ import mozilla.appservices.places.BookmarkRoot
import mozilla.appservices.places.uniffi.PlacesApiException
import mozilla.components.concept.storage.BookmarksStorage
import mozilla.components.concept.storage.HistoryStorage
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import java.util.concurrent.TimeUnit
/**
@@ -20,12 +20,17 @@ class BookmarksUseCase(
historyStorage: HistoryStorage,
) {
+ /**
+ * Use case for adding a new bookmark.
+ *
+ * @param storage [BookmarksStorage] used to add and retrieve bookmark data.
+ */
class AddBookmarksUseCase internal constructor(private val storage: BookmarksStorage) {
/**
* Adds a new bookmark with the provided [url] and [title].
*
- * @return The result if the operation was executed or not. A bookmark may not be added if
+ * @return The guid of the newly added bookmark or null. A bookmark may not be added if
* one with the identical [url] already exists.
*/
@WorkerThread
@@ -34,21 +39,22 @@ class BookmarksUseCase(
title: String,
position: UInt? = null,
parentGuid: String? = null,
- ): Boolean {
+ ): String? {
return try {
val canAdd = storage.getBookmarksWithUrl(url).firstOrNull { it.url == url } == null
- if (canAdd) {
+ return if (canAdd) {
storage.addItem(
parentGuid ?: BookmarkRoot.Mobile.id,
url = url,
title = title,
position = position,
)
+ } else {
+ null
}
- canAdd
} catch (e: PlacesApiException.UrlParseFailed) {
- false
+ null
}
}
}
@@ -68,27 +74,26 @@ class BookmarksUseCase(
* Retrieves a list of recently added bookmarks, if any, up to maximum.
*
* @param count The number of recent bookmarks to return.
- * @param maxAgeInMs The maximum age (ms) of a recently added bookmark to return.
- * @return a list of [RecentBookmark] that were added no older than specify by [maxAgeInMs],
- * if any, up to a number specified by [count].
+ * @param previewImageMaxAgeMs The maximum age (ms) to search history for preview image URLs.
+ * @return a list of [Bookmark]s if any, up to a number specified by [count].
*/
@WorkerThread
suspend operator fun invoke(
count: Int = DEFAULT_BOOKMARKS_TO_RETRIEVE,
- maxAgeInMs: Long = TimeUnit.DAYS.toMillis(DEFAULT_BOOKMARKS_DAYS_AGE_TO_RETRIEVE),
- ): List<RecentBookmark> {
+ previewImageMaxAgeMs: Long = TimeUnit.DAYS.toMillis(DEFAULT_BOOKMARKS_LENGTH_DAYS_PREVIEW_IMAGE_SEARCH),
+ ): List<Bookmark> {
val currentTime = System.currentTimeMillis()
// Fetch visit information within the time range of now and the specified maximum age.
val history = historyStorage?.getDetailedVisits(
- start = currentTime - maxAgeInMs,
+ start = currentTime - previewImageMaxAgeMs,
end = currentTime,
)
return bookmarksStorage
- .getRecentBookmarks(count, maxAgeInMs)
+ .getRecentBookmarks(count)
.map { bookmark ->
- RecentBookmark(
+ Bookmark(
title = bookmark.title,
url = bookmark.url,
previewImageUrl = history?.find { bookmark.url == it.url }?.previewImageUrl,
@@ -107,9 +112,9 @@ class BookmarksUseCase(
companion object {
// Number of recent bookmarks to retrieve.
- const val DEFAULT_BOOKMARKS_TO_RETRIEVE = 4
+ const val DEFAULT_BOOKMARKS_TO_RETRIEVE = 8
// The maximum age in days of a recent bookmarks to retrieve.
- const val DEFAULT_BOOKMARKS_DAYS_AGE_TO_RETRIEVE = 10L
+ const val DEFAULT_BOOKMARKS_LENGTH_DAYS_PREVIEW_IMAGE_SEARCH = 10L
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/BrowserNavigationParams.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/BrowserNavigationParams.kt
new file mode 100644
index 0000000000..8de758f3d7
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/BrowserNavigationParams.kt
@@ -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/. */
+
+package org.mozilla.fenix.components.menu
+
+import org.mozilla.fenix.settings.SupportUtils.SumoTopic
+
+/**
+ * Browser navigation parameters of the URL or [SumoTopic] to be loaded.
+ *
+ * @property url The URL to be loaded.
+ * @property sumoTopic The [SumoTopic] to be loaded.
+ */
+data class BrowserNavigationParams(
+ val url: String? = null,
+ val sumoTopic: SumoTopic? = null,
+)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuAccessPoint.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuAccessPoint.kt
new file mode 100644
index 0000000000..f1d8b3a326
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuAccessPoint.kt
@@ -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/. */
+
+package org.mozilla.fenix.components.menu
+
+import org.mozilla.fenix.components.accounts.FenixFxAEntryPoint
+
+/**
+ * The origin access points that was used to navigate to the Menu dialog.
+ */
+enum class MenuAccessPoint {
+ /**
+ * Menu was accessed from the browser.
+ */
+ Browser,
+
+ /**
+ * Menu was accessed from an external app (e.g. custom tab).
+ */
+ External,
+
+ /**
+ * Menu was accessed from the home screen.
+ */
+ Home,
+}
+
+/**
+ * Returns the [FenixFxAEntryPoint] equivalent from the given [MenuAccessPoint].
+ */
+internal fun MenuAccessPoint.toFenixFxAEntryPoint(): FenixFxAEntryPoint {
+ return when (this) {
+ MenuAccessPoint.Browser -> FenixFxAEntryPoint.BrowserToolbar
+ MenuAccessPoint.External -> FenixFxAEntryPoint.Unknown
+ MenuAccessPoint.Home -> FenixFxAEntryPoint.HomeMenu
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuDialogFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuDialogFragment.kt
index 05890cd71d..c0d9d6f11d 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuDialogFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuDialogFragment.kt
@@ -9,25 +9,42 @@ import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.remember
+import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.platform.ComposeView
import androidx.compose.ui.platform.ViewCompositionStrategy
+import androidx.navigation.compose.NavHost
+import androidx.navigation.compose.composable
+import androidx.navigation.compose.rememberNavController
import androidx.navigation.fragment.findNavController
+import androidx.navigation.fragment.navArgs
import com.google.android.material.bottomsheet.BottomSheetBehavior
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
+import mozilla.components.browser.state.selector.selectedTab
+import mozilla.components.lib.state.ext.observeAsState
+import mozilla.components.service.fxa.manager.AccountState.NotAuthenticated
import org.mozilla.fenix.BrowserDirection
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
-import org.mozilla.fenix.components.accounts.AccountState
-import org.mozilla.fenix.components.lazyStore
-import org.mozilla.fenix.components.menu.compose.MenuDialog
+import org.mozilla.fenix.components.components
+import org.mozilla.fenix.components.menu.compose.EXTENSIONS_MENU_ROUTE
+import org.mozilla.fenix.components.menu.compose.ExtensionsSubmenu
+import org.mozilla.fenix.components.menu.compose.MAIN_MENU_ROUTE
+import org.mozilla.fenix.components.menu.compose.MainMenu
import org.mozilla.fenix.components.menu.compose.MenuDialogBottomSheet
+import org.mozilla.fenix.components.menu.compose.SAVE_MENU_ROUTE
+import org.mozilla.fenix.components.menu.compose.SaveSubmenu
+import org.mozilla.fenix.components.menu.compose.TOOLS_MENU_ROUTE
+import org.mozilla.fenix.components.menu.compose.ToolsSubmenu
+import org.mozilla.fenix.components.menu.middleware.MenuDialogMiddleware
import org.mozilla.fenix.components.menu.middleware.MenuNavigationMiddleware
+import org.mozilla.fenix.components.menu.store.BrowserMenuState
import org.mozilla.fenix.components.menu.store.MenuAction
import org.mozilla.fenix.components.menu.store.MenuState
import org.mozilla.fenix.components.menu.store.MenuStore
import org.mozilla.fenix.ext.runIfFragmentIsAttached
import org.mozilla.fenix.settings.SupportUtils
-import org.mozilla.fenix.settings.SupportUtils.SumoTopic
import org.mozilla.fenix.theme.FirefoxTheme
/**
@@ -35,18 +52,8 @@ import org.mozilla.fenix.theme.FirefoxTheme
*/
class MenuDialogFragment : BottomSheetDialogFragment() {
- private val store by lazyStore { viewModelScope ->
- MenuStore(
- initialState = MenuState(),
- middleware = listOf(
- MenuNavigationMiddleware(
- navController = findNavController(),
- openSumoTopic = ::openSumoTopic,
- scope = viewModelScope,
- ),
- ),
- )
- }
+ private val args by navArgs<MenuDialogFragmentArgs>()
+ private val browsingModeManager get() = (activity as HomeActivity).browsingModeManager
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog =
super.onCreateDialog(savedInstanceState).apply {
@@ -59,6 +66,7 @@ class MenuDialogFragment : BottomSheetDialogFragment() {
}
}
+ @Suppress("LongMethod")
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
@@ -69,42 +77,193 @@ class MenuDialogFragment : BottomSheetDialogFragment() {
setContent {
FirefoxTheme {
MenuDialogBottomSheet(onRequestDismiss = {}) {
- MenuDialog(
- account = null,
- accountState = AccountState.NO_ACCOUNT,
- onSignInButtonClick = {},
- onHelpButtonClick = {
- store.dispatch(MenuAction.Navigate.Help)
- },
- onSettingsButtonClick = {
- store.dispatch(MenuAction.Navigate.Settings)
- },
- onBookmarksMenuClick = {
- store.dispatch(MenuAction.Navigate.Bookmarks)
- },
- onHistoryMenuClick = {
- store.dispatch(MenuAction.Navigate.History)
- },
- onDownloadsMenuClick = {
- store.dispatch(MenuAction.Navigate.Downloads)
- },
- onPasswordsMenuClick = {
- store.dispatch(MenuAction.Navigate.Passwords)
- },
- )
+ val browserStore = components.core.store
+ val syncStore = components.backgroundServices.syncStore
+ val bookmarksStorage = components.core.bookmarksStorage
+ val addBookmarkUseCase = components.useCases.bookmarksUseCases.addBookmark
+ val printContentUseCase = components.useCases.sessionUseCases.printContent
+ val saveToPdfUseCase = components.useCases.sessionUseCases.saveToPdf
+ val selectedTab = browserStore.state.selectedTab
+
+ val navHostController = rememberNavController()
+ val coroutineScope = rememberCoroutineScope()
+ val store = remember {
+ MenuStore(
+ initialState = MenuState(
+ browserMenuState = if (selectedTab != null) {
+ BrowserMenuState(selectedTab = selectedTab)
+ } else {
+ null
+ },
+ ),
+ middleware = listOf(
+ MenuDialogMiddleware(
+ bookmarksStorage = bookmarksStorage,
+ addBookmarkUseCase = addBookmarkUseCase,
+ scope = coroutineScope,
+ ),
+ MenuNavigationMiddleware(
+ navController = findNavController(),
+ navHostController = navHostController,
+ browsingModeManager = browsingModeManager,
+ openToBrowser = ::openToBrowser,
+ scope = coroutineScope,
+ ),
+ ),
+ )
+ }
+
+ val account by syncStore.observeAsState(initialValue = null) { state -> state.account }
+ val accountState by syncStore.observeAsState(initialValue = NotAuthenticated) { state ->
+ state.accountState
+ }
+ val isBookmarked by store.observeAsState(initialValue = false) { state ->
+ state.browserMenuState != null && state.browserMenuState.bookmarkState.isBookmarked
+ }
+
+ NavHost(
+ navController = navHostController,
+ startDestination = MAIN_MENU_ROUTE,
+ ) {
+ composable(route = MAIN_MENU_ROUTE) {
+ MainMenu(
+ accessPoint = args.accesspoint,
+ account = account,
+ accountState = accountState,
+ isPrivate = browsingModeManager.mode.isPrivate,
+ onMozillaAccountButtonClick = {
+ store.dispatch(
+ MenuAction.Navigate.MozillaAccount(
+ accountState = accountState,
+ accesspoint = args.accesspoint,
+ ),
+ )
+ },
+ onHelpButtonClick = {
+ store.dispatch(MenuAction.Navigate.Help)
+ },
+ onSettingsButtonClick = {
+ store.dispatch(MenuAction.Navigate.Settings)
+ },
+ onNewTabMenuClick = {
+ store.dispatch(MenuAction.Navigate.NewTab)
+ },
+ onNewPrivateTabMenuClick = {
+ store.dispatch(MenuAction.Navigate.NewPrivateTab)
+ },
+ onSwitchToDesktopSiteMenuClick = {},
+ onFindInPageMenuClick = {},
+ onToolsMenuClick = {
+ store.dispatch(MenuAction.Navigate.Tools)
+ },
+ onSaveMenuClick = {
+ store.dispatch(MenuAction.Navigate.Save)
+ },
+ onExtensionsMenuClick = {
+ store.dispatch(MenuAction.Navigate.Extensions)
+ },
+ onBookmarksMenuClick = {
+ store.dispatch(MenuAction.Navigate.Bookmarks)
+ },
+ onHistoryMenuClick = {
+ store.dispatch(MenuAction.Navigate.History)
+ },
+ onDownloadsMenuClick = {
+ store.dispatch(MenuAction.Navigate.Downloads)
+ },
+ onPasswordsMenuClick = {
+ store.dispatch(MenuAction.Navigate.Passwords)
+ },
+ onCustomizeHomepageMenuClick = {
+ store.dispatch(MenuAction.Navigate.CustomizeHomepage)
+ },
+ onNewInFirefoxMenuClick = {
+ store.dispatch(MenuAction.Navigate.ReleaseNotes)
+ },
+ )
+ }
+
+ composable(route = TOOLS_MENU_ROUTE) {
+ ToolsSubmenu(
+ isReaderViewActive = false,
+ isTranslated = false,
+ onBackButtonClick = {
+ store.dispatch(MenuAction.Navigate.Back)
+ },
+ onReaderViewMenuClick = {},
+ onTranslatePageMenuClick = {
+ selectedTab?.let {
+ store.dispatch(MenuAction.Navigate.Translate)
+ }
+ },
+ onPrintMenuClick = {
+ printContentUseCase()
+ dismiss()
+ },
+ onShareMenuClick = {
+ selectedTab?.let {
+ store.dispatch(MenuAction.Navigate.Share)
+ }
+ },
+ onOpenInAppMenuClick = {},
+ )
+ }
+
+ composable(route = SAVE_MENU_ROUTE) {
+ SaveSubmenu(
+ isBookmarked = isBookmarked,
+ onBackButtonClick = {
+ store.dispatch(MenuAction.Navigate.Back)
+ },
+ onBookmarkPageMenuClick = {
+ store.dispatch(MenuAction.AddBookmark)
+ },
+ onEditBookmarkButtonClick = {
+ store.dispatch(MenuAction.Navigate.EditBookmark)
+ },
+ onAddToShortcutsMenuClick = {},
+ onAddToHomeScreenMenuClick = {},
+ onSaveToCollectionMenuClick = {},
+ onSaveAsPDFMenuClick = {
+ saveToPdfUseCase()
+ dismiss()
+ },
+ )
+ }
+
+ composable(route = EXTENSIONS_MENU_ROUTE) {
+ ExtensionsSubmenu(
+ onBackButtonClick = {
+ store.dispatch(MenuAction.Navigate.Back)
+ },
+ onManageExtensionsMenuClick = {
+ store.dispatch(MenuAction.Navigate.ManageExtensions)
+ },
+ onDiscoverMoreExtensionsMenuClick = {
+ store.dispatch(MenuAction.Navigate.DiscoverMoreExtensions)
+ },
+ )
+ }
+ }
}
}
}
}
- private fun openSumoTopic(topic: SumoTopic) = runIfFragmentIsAttached {
- (activity as HomeActivity).openToBrowserAndLoad(
- searchTermOrURL = SupportUtils.getSumoURLForTopic(
+ private fun openToBrowser(params: BrowserNavigationParams) = runIfFragmentIsAttached {
+ val url = params.url ?: params.sumoTopic?.let {
+ SupportUtils.getSumoURLForTopic(
context = requireContext(),
- topic = topic,
- ),
- newTab = true,
- from = BrowserDirection.FromMenuDialogFragment,
- )
+ topic = it,
+ )
+ }
+
+ url?.let {
+ (activity as HomeActivity).openToBrowserAndLoad(
+ searchTermOrURL = url,
+ newTab = true,
+ from = BrowserDirection.FromMenuDialogFragment,
+ )
+ }
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/ExtensionsSubmenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/ExtensionsSubmenu.kt
new file mode 100644
index 0000000000..2bfffb7103
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/ExtensionsSubmenu.kt
@@ -0,0 +1,101 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.components.menu.compose
+
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.Arrangement
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.height
+import androidx.compose.foundation.layout.padding
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.components.menu.compose.header.SubmenuHeader
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.compose.list.TextListItem
+import org.mozilla.fenix.theme.FirefoxTheme
+import org.mozilla.fenix.theme.Theme
+
+internal const val EXTENSIONS_MENU_ROUTE = "extensions_menu"
+
+@Composable
+internal fun ExtensionsSubmenu(
+ onBackButtonClick: () -> Unit,
+ onManageExtensionsMenuClick: () -> Unit,
+ onDiscoverMoreExtensionsMenuClick: () -> Unit,
+) {
+ Column {
+ SubmenuHeader(
+ header = stringResource(id = R.string.browser_menu_extensions),
+ onClick = onBackButtonClick,
+ )
+
+ Spacer(modifier = Modifier.height(8.dp))
+
+ Column(
+ modifier = Modifier
+ .padding(
+ start = 16.dp,
+ top = 12.dp,
+ end = 16.dp,
+ bottom = 32.dp,
+ ),
+ verticalArrangement = Arrangement.spacedBy(32.dp),
+ ) {
+ MenuGroup {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_manage_extensions),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_extension_cog_24),
+ onClick = onManageExtensionsMenuClick,
+ )
+ }
+
+ MenuGroup {
+ TextListItem(
+ label = stringResource(id = R.string.browser_menu_discover_more_extensions),
+ onClick = onDiscoverMoreExtensionsMenuClick,
+ iconPainter = painterResource(R.drawable.mozac_ic_external_link_24),
+ iconTint = FirefoxTheme.colors.iconSecondary,
+ )
+ }
+ }
+ }
+}
+
+@LightDarkPreview
+@Composable
+private fun ExtensionsSubmenuPreview() {
+ FirefoxTheme {
+ Column(
+ modifier = Modifier.background(color = FirefoxTheme.colors.layer3),
+ ) {
+ ExtensionsSubmenu(
+ onBackButtonClick = {},
+ onManageExtensionsMenuClick = {},
+ onDiscoverMoreExtensionsMenuClick = {},
+ )
+ }
+ }
+}
+
+@LightDarkPreview
+@Composable
+private fun ExtensionsSubmenuPrivatePreview() {
+ FirefoxTheme(theme = Theme.Private) {
+ Column(
+ modifier = Modifier.background(color = FirefoxTheme.colors.layer3),
+ ) {
+ ExtensionsSubmenu(
+ onBackButtonClick = {},
+ onManageExtensionsMenuClick = {},
+ onDiscoverMoreExtensionsMenuClick = {},
+ )
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MainMenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MainMenu.kt
new file mode 100644
index 0000000000..695fbfcbca
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MainMenu.kt
@@ -0,0 +1,365 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.components.menu.compose
+
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.Arrangement
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.height
+import androidx.compose.foundation.layout.padding
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.tooling.preview.Preview
+import androidx.compose.ui.unit.dp
+import mozilla.components.service.fxa.manager.AccountState
+import mozilla.components.service.fxa.manager.AccountState.NotAuthenticated
+import mozilla.components.service.fxa.store.Account
+import org.mozilla.fenix.R
+import org.mozilla.fenix.components.menu.MenuAccessPoint
+import org.mozilla.fenix.components.menu.compose.header.MenuHeader
+import org.mozilla.fenix.compose.Divider
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.theme.FirefoxTheme
+import org.mozilla.fenix.theme.Theme
+
+internal const val MAIN_MENU_ROUTE = "main_menu"
+
+/**
+ * Wrapper column containing the main menu items.
+ *
+ * @param accessPoint The [MenuAccessPoint] that was used to navigate to the menu dialog.
+ * @param account [Account] information available for a synced account.
+ * @param accountState The [AccountState] of a Mozilla account.
+ * @param isPrivate Whether or not the browsing mode is in private mode.
+ * @param onMozillaAccountButtonClick Invoked when the user clicks on Mozilla account button.
+ * @param onHelpButtonClick Invoked when the user clicks on the help button.
+ * @param onSettingsButtonClick Invoked when the user clicks on the settings button.
+ * @param onNewTabMenuClick Invoked when the user clicks on the new tab menu item.
+ * @param onNewPrivateTabMenuClick Invoked when the user clicks on the new private tab menu item.
+ * @param onSwitchToDesktopSiteMenuClick Invoked when the user clicks on the switch to desktop site
+ * menu toggle.
+ * @param onFindInPageMenuClick Invoked when the user clicks on the find in page menu item.
+ * @param onToolsMenuClick Invoked when the user clicks on the tools menu item.
+ * @param onSaveMenuClick Invoked when the user clicks on the save menu item.
+ * @param onExtensionsMenuClick Invoked when the user clicks on the extensions menu item.
+ * @param onBookmarksMenuClick Invoked when the user clicks on the bookmarks menu item.
+ * @param onHistoryMenuClick Invoked when the user clicks on the history menu item.
+ * @param onDownloadsMenuClick Invoked when the user clicks on the downloads menu item.
+ * @param onPasswordsMenuClick Invoked when the user clicks on the passwords menu item.
+ * @param onCustomizeHomepageMenuClick Invoked when the user clicks on the customize
+ * homepage menu item.
+ * @param onNewInFirefoxMenuClick Invoked when the user clicks on the release note menu item.
+ */
+@Suppress("LongParameterList")
+@Composable
+internal fun MainMenu(
+ accessPoint: MenuAccessPoint,
+ account: Account?,
+ accountState: AccountState,
+ isPrivate: Boolean,
+ onMozillaAccountButtonClick: () -> Unit,
+ onHelpButtonClick: () -> Unit,
+ onSettingsButtonClick: () -> Unit,
+ onNewTabMenuClick: () -> Unit,
+ onNewPrivateTabMenuClick: () -> Unit,
+ onSwitchToDesktopSiteMenuClick: () -> Unit,
+ onFindInPageMenuClick: () -> Unit,
+ onToolsMenuClick: () -> Unit,
+ onSaveMenuClick: () -> Unit,
+ onExtensionsMenuClick: () -> Unit,
+ onBookmarksMenuClick: () -> Unit,
+ onHistoryMenuClick: () -> Unit,
+ onDownloadsMenuClick: () -> Unit,
+ onPasswordsMenuClick: () -> Unit,
+ onCustomizeHomepageMenuClick: () -> Unit,
+ onNewInFirefoxMenuClick: () -> Unit,
+) {
+ Column {
+ MenuHeader(
+ account = account,
+ accountState = accountState,
+ onMozillaAccountButtonClick = onMozillaAccountButtonClick,
+ onHelpButtonClick = onHelpButtonClick,
+ onSettingsButtonClick = onSettingsButtonClick,
+ )
+
+ Spacer(modifier = Modifier.height(8.dp))
+
+ Column(
+ modifier = Modifier
+ .padding(
+ start = 16.dp,
+ top = 12.dp,
+ end = 16.dp,
+ bottom = 32.dp,
+ ),
+ verticalArrangement = Arrangement.spacedBy(32.dp),
+ ) {
+ NewTabsMenuGroup(
+ accessPoint = accessPoint,
+ isPrivate = isPrivate,
+ onNewTabMenuClick = onNewTabMenuClick,
+ onNewPrivateTabMenuClick = onNewPrivateTabMenuClick,
+ )
+
+ ToolsAndActionsMenuGroup(
+ accessPoint = accessPoint,
+ onSwitchToDesktopSiteMenuClick = onSwitchToDesktopSiteMenuClick,
+ onFindInPageMenuClick = onFindInPageMenuClick,
+ onToolsMenuClick = onToolsMenuClick,
+ onSaveMenuClick = onSaveMenuClick,
+ onExtensionsMenuClick = onExtensionsMenuClick,
+ )
+
+ LibraryMenuGroup(
+ onBookmarksMenuClick = onBookmarksMenuClick,
+ onHistoryMenuClick = onHistoryMenuClick,
+ onDownloadsMenuClick = onDownloadsMenuClick,
+ onPasswordsMenuClick = onPasswordsMenuClick,
+ )
+
+ if (accessPoint == MenuAccessPoint.Home) {
+ HomepageMenuGroup(
+ onCustomizeHomepageMenuClick = onCustomizeHomepageMenuClick,
+ onNewInFirefoxMenuClick = onNewInFirefoxMenuClick,
+ )
+ }
+ }
+ }
+}
+
+@Composable
+private fun NewTabsMenuGroup(
+ accessPoint: MenuAccessPoint,
+ isPrivate: Boolean,
+ onNewTabMenuClick: () -> Unit,
+ onNewPrivateTabMenuClick: () -> Unit,
+) {
+ val isNewTabMenuEnabled: Boolean
+ val isNewPrivateTabMenuEnabled: Boolean
+
+ when (accessPoint) {
+ MenuAccessPoint.Browser,
+ MenuAccessPoint.External,
+ -> {
+ isNewTabMenuEnabled = true
+ isNewPrivateTabMenuEnabled = true
+ }
+
+ MenuAccessPoint.Home -> {
+ isNewTabMenuEnabled = isPrivate
+ isNewPrivateTabMenuEnabled = !isPrivate
+ }
+ }
+
+ MenuGroup {
+ MenuItem(
+ label = stringResource(id = R.string.library_new_tab),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_plus_24),
+ state = if (isNewTabMenuEnabled) MenuItemState.ENABLED else MenuItemState.DISABLED,
+ onClick = onNewTabMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_new_private_tab),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_private_mode_circle_fill_24),
+ state = if (isNewPrivateTabMenuEnabled) MenuItemState.ENABLED else MenuItemState.DISABLED,
+ onClick = onNewPrivateTabMenuClick,
+ )
+ }
+}
+
+@Composable
+private fun ToolsAndActionsMenuGroup(
+ accessPoint: MenuAccessPoint,
+ onSwitchToDesktopSiteMenuClick: () -> Unit,
+ onFindInPageMenuClick: () -> Unit,
+ onToolsMenuClick: () -> Unit,
+ onSaveMenuClick: () -> Unit,
+ onExtensionsMenuClick: () -> Unit,
+) {
+ MenuGroup {
+ if (accessPoint == MenuAccessPoint.Browser) {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_switch_to_desktop_site),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_device_desktop_24),
+ onClick = onSwitchToDesktopSiteMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_find_in_page_2),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_search_24),
+ onClick = onFindInPageMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_tools),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_tool_24),
+ onClick = onToolsMenuClick,
+ afterIconPainter = painterResource(id = R.drawable.mozac_ic_chevron_right_24),
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_save),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_save_24),
+ onClick = onSaveMenuClick,
+ afterIconPainter = painterResource(id = R.drawable.mozac_ic_chevron_right_24),
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+ }
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_extensions),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_extension_24),
+ onClick = onExtensionsMenuClick,
+ afterIconPainter = painterResource(id = R.drawable.mozac_ic_chevron_right_24),
+ )
+ }
+}
+
+@Composable
+private fun LibraryMenuGroup(
+ onBookmarksMenuClick: () -> Unit,
+ onHistoryMenuClick: () -> Unit,
+ onDownloadsMenuClick: () -> Unit,
+ onPasswordsMenuClick: () -> Unit,
+) {
+ MenuGroup {
+ MenuItem(
+ label = stringResource(id = R.string.library_bookmarks),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_bookmark_tray_fill_24),
+ onClick = onBookmarksMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.library_history),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_history_24),
+ onClick = onHistoryMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.library_downloads),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_download_24),
+ onClick = onDownloadsMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_passwords),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_login_24),
+ onClick = onPasswordsMenuClick,
+ )
+ }
+}
+
+@Composable
+private fun HomepageMenuGroup(
+ onCustomizeHomepageMenuClick: () -> Unit,
+ onNewInFirefoxMenuClick: () -> Unit,
+) {
+ MenuGroup {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_customize_home_1),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_grid_add_24),
+ onClick = onCustomizeHomepageMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(
+ id = R.string.browser_menu_new_in_firefox,
+ stringResource(id = R.string.app_name),
+ ),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_whats_new_24),
+ onClick = onNewInFirefoxMenuClick,
+ )
+ }
+}
+
+@LightDarkPreview
+@Composable
+private fun MenuDialogPreview() {
+ FirefoxTheme {
+ Column(
+ modifier = Modifier
+ .background(color = FirefoxTheme.colors.layer3),
+ ) {
+ MainMenu(
+ accessPoint = MenuAccessPoint.Home,
+ account = null,
+ accountState = NotAuthenticated,
+ isPrivate = false,
+ onMozillaAccountButtonClick = {},
+ onHelpButtonClick = {},
+ onSettingsButtonClick = {},
+ onNewTabMenuClick = {},
+ onNewPrivateTabMenuClick = {},
+ onSwitchToDesktopSiteMenuClick = {},
+ onFindInPageMenuClick = {},
+ onToolsMenuClick = {},
+ onSaveMenuClick = {},
+ onExtensionsMenuClick = {},
+ onBookmarksMenuClick = {},
+ onHistoryMenuClick = {},
+ onDownloadsMenuClick = {},
+ onPasswordsMenuClick = {},
+ onCustomizeHomepageMenuClick = {},
+ onNewInFirefoxMenuClick = {},
+ )
+ }
+ }
+}
+
+@Preview
+@Composable
+private fun MenuDialogPrivatePreview() {
+ FirefoxTheme(theme = Theme.Private) {
+ Column(
+ modifier = Modifier
+ .background(color = FirefoxTheme.colors.layer3),
+ ) {
+ MainMenu(
+ accessPoint = MenuAccessPoint.Home,
+ account = null,
+ accountState = NotAuthenticated,
+ isPrivate = false,
+ onMozillaAccountButtonClick = {},
+ onHelpButtonClick = {},
+ onSettingsButtonClick = {},
+ onNewTabMenuClick = {},
+ onNewPrivateTabMenuClick = {},
+ onSwitchToDesktopSiteMenuClick = {},
+ onFindInPageMenuClick = {},
+ onToolsMenuClick = {},
+ onSaveMenuClick = {},
+ onExtensionsMenuClick = {},
+ onBookmarksMenuClick = {},
+ onHistoryMenuClick = {},
+ onDownloadsMenuClick = {},
+ onPasswordsMenuClick = {},
+ onCustomizeHomepageMenuClick = {},
+ onNewInFirefoxMenuClick = {},
+ )
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuDialog.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuDialog.kt
deleted file mode 100644
index a9747fce84..0000000000
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuDialog.kt
+++ /dev/null
@@ -1,203 +0,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/. */
-
-package org.mozilla.fenix.components.menu.compose
-
-import androidx.compose.foundation.background
-import androidx.compose.foundation.layout.Arrangement
-import androidx.compose.foundation.layout.Column
-import androidx.compose.foundation.layout.Spacer
-import androidx.compose.foundation.layout.height
-import androidx.compose.foundation.layout.padding
-import androidx.compose.runtime.Composable
-import androidx.compose.ui.Modifier
-import androidx.compose.ui.res.painterResource
-import androidx.compose.ui.res.stringResource
-import androidx.compose.ui.tooling.preview.Preview
-import androidx.compose.ui.unit.dp
-import mozilla.components.service.fxa.store.Account
-import org.mozilla.fenix.R
-import org.mozilla.fenix.components.accounts.AccountState
-import org.mozilla.fenix.components.accounts.AccountState.NO_ACCOUNT
-import org.mozilla.fenix.components.menu.compose.header.MenuHeader
-import org.mozilla.fenix.compose.Divider
-import org.mozilla.fenix.compose.annotation.LightDarkPreview
-import org.mozilla.fenix.compose.list.IconListItem
-import org.mozilla.fenix.theme.FirefoxTheme
-import org.mozilla.fenix.theme.Theme
-
-/**
- * The menu bottom sheet dialog.
- *
- * @param account [Account] information available for a synced account.
- * @param accountState The [AccountState] of a synced account.
- * @param onSignInButtonClick Invoked when the user clicks on the "Sign in" button.
- * @param onHelpButtonClick Invoked when the user clicks on the help button.
- * @param onSettingsButtonClick Invoked when the user clicks on the settings button.
- * @param onBookmarksMenuClick Invoked when the user clicks on the bookmarks menu item.
- * @param onHistoryMenuClick Invoked when the user clicks on the history menu item.
- * @param onDownloadsMenuClick Invoked when the user clicks on the downloads menu item.
- * @param onPasswordsMenuClick Invoked when the user clicks on the passwords menu item.
- */
-@Suppress("LongParameterList")
-@Composable
-fun MenuDialog(
- account: Account?,
- accountState: AccountState,
- onSignInButtonClick: () -> Unit,
- onHelpButtonClick: () -> Unit,
- onSettingsButtonClick: () -> Unit,
- onBookmarksMenuClick: () -> Unit,
- onHistoryMenuClick: () -> Unit,
- onDownloadsMenuClick: () -> Unit,
- onPasswordsMenuClick: () -> Unit,
-) {
- Column {
- MenuHeader(
- account = account,
- accountState = accountState,
- onSignInButtonClick = onSignInButtonClick,
- onHelpButtonClick = onHelpButtonClick,
- onSettingsButtonClick = onSettingsButtonClick,
- )
-
- Spacer(modifier = Modifier.height(8.dp))
-
- MainMenu(
- onBookmarksMenuClick = onBookmarksMenuClick,
- onHistoryMenuClick = onHistoryMenuClick,
- onDownloadsMenuClick = onDownloadsMenuClick,
- onPasswordsMenuClick = onPasswordsMenuClick,
- )
- }
-}
-
-/**
- * Wrapper column containing the main menu items.
- */
-@Composable
-private fun MainMenu(
- onBookmarksMenuClick: () -> Unit,
- onHistoryMenuClick: () -> Unit,
- onDownloadsMenuClick: () -> Unit,
- onPasswordsMenuClick: () -> Unit,
-) {
- Column(
- modifier = Modifier
- .padding(
- start = 16.dp,
- top = 12.dp,
- end = 16.dp,
- bottom = 32.dp,
- ),
- verticalArrangement = Arrangement.spacedBy(32.dp),
- ) {
- MenuGroup {
- IconListItem(
- label = stringResource(id = R.string.library_new_tab),
- beforeIconPainter = painterResource(id = R.drawable.mozac_ic_plus_24),
- )
-
- Divider(color = FirefoxTheme.colors.borderSecondary)
-
- IconListItem(
- label = stringResource(id = R.string.browser_menu_new_private_tab),
- beforeIconPainter = painterResource(id = R.drawable.mozac_ic_private_mode_circle_fill_24),
- )
- }
-
- LibraryMenuGroup(
- onBookmarksMenuClick = onBookmarksMenuClick,
- onHistoryMenuClick = onHistoryMenuClick,
- onDownloadsMenuClick = onDownloadsMenuClick,
- onPasswordsMenuClick = onPasswordsMenuClick,
- )
- }
-}
-
-@Composable
-private fun LibraryMenuGroup(
- onBookmarksMenuClick: () -> Unit,
- onHistoryMenuClick: () -> Unit,
- onDownloadsMenuClick: () -> Unit,
- onPasswordsMenuClick: () -> Unit,
-) {
- MenuGroup {
- IconListItem(
- label = stringResource(id = R.string.library_bookmarks),
- onClick = onBookmarksMenuClick,
- beforeIconPainter = painterResource(id = R.drawable.mozac_ic_bookmark_tray_fill_24),
- )
-
- Divider(color = FirefoxTheme.colors.borderSecondary)
-
- IconListItem(
- label = stringResource(id = R.string.library_history),
- onClick = onHistoryMenuClick,
- beforeIconPainter = painterResource(id = R.drawable.mozac_ic_history_24),
- )
-
- Divider(color = FirefoxTheme.colors.borderSecondary)
-
- IconListItem(
- label = stringResource(id = R.string.library_downloads),
- onClick = onDownloadsMenuClick,
- beforeIconPainter = painterResource(id = R.drawable.mozac_ic_download_24),
- )
-
- Divider(color = FirefoxTheme.colors.borderSecondary)
-
- IconListItem(
- label = stringResource(id = R.string.browser_menu_passwords),
- onClick = onPasswordsMenuClick,
- beforeIconPainter = painterResource(id = R.drawable.mozac_ic_login_24),
- )
- }
-}
-
-@LightDarkPreview
-@Composable
-private fun MenuDialogPreview() {
- FirefoxTheme {
- Column(
- modifier = Modifier
- .background(color = FirefoxTheme.colors.layer3),
- ) {
- MenuDialog(
- account = null,
- accountState = NO_ACCOUNT,
- onSignInButtonClick = {},
- onHelpButtonClick = {},
- onSettingsButtonClick = {},
- onBookmarksMenuClick = {},
- onHistoryMenuClick = {},
- onDownloadsMenuClick = {},
- onPasswordsMenuClick = {},
- )
- }
- }
-}
-
-@Preview
-@Composable
-private fun MenuDialogPrivatePreview() {
- FirefoxTheme(theme = Theme.Private) {
- Column(
- modifier = Modifier
- .background(color = FirefoxTheme.colors.layer3),
- ) {
- MenuDialog(
- account = null,
- accountState = NO_ACCOUNT,
- onSignInButtonClick = {},
- onHelpButtonClick = {},
- onSettingsButtonClick = {},
- onBookmarksMenuClick = {},
- onHistoryMenuClick = {},
- onDownloadsMenuClick = {},
- onPasswordsMenuClick = {},
- )
- }
- }
-}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuGroup.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuGroup.kt
index 1b2fb0ab2f..811ab69db9 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuGroup.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuGroup.kt
@@ -19,7 +19,6 @@ import androidx.compose.ui.unit.dp
import org.mozilla.fenix.R
import org.mozilla.fenix.compose.Divider
import org.mozilla.fenix.compose.annotation.LightDarkPreview
-import org.mozilla.fenix.compose.list.IconListItem
import org.mozilla.fenix.theme.FirefoxTheme
private val ROUNDED_CORNER_SHAPE = RoundedCornerShape(12.dp)
@@ -60,14 +59,14 @@ private fun MenuGroupPreview() {
.padding(16.dp),
) {
MenuGroup {
- IconListItem(
+ MenuItem(
label = stringResource(id = R.string.browser_menu_add_to_homescreen),
beforeIconPainter = painterResource(id = R.drawable.mozac_ic_plus_24),
)
Divider(color = FirefoxTheme.colors.borderSecondary)
- IconListItem(
+ MenuItem(
label = stringResource(id = R.string.browser_menu_add_to_homescreen),
beforeIconPainter = painterResource(id = R.drawable.mozac_ic_plus_24),
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuItem.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuItem.kt
new file mode 100644
index 0000000000..41f64670a2
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/MenuItem.kt
@@ -0,0 +1,202 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.components.menu.compose
+
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.padding
+import androidx.compose.material.Icon
+import androidx.compose.material.IconButton
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.graphics.painter.Painter
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.compose.Divider
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.compose.list.IconListItem
+import org.mozilla.fenix.theme.FirefoxTheme
+
+/**
+ * An [IconListItem] wrapper for menu items in a [MenuGroup] with an optional icon at the end.
+ *
+ * @param label The label in the menu item.
+ * @param beforeIconPainter [Painter] used to display an [Icon] before the list item.
+ * @param beforeIconDescription Content description of the icon.
+ * @param description An optional description text below the label.
+ * @param state The state of the menu item to display.
+ * @param onClick Invoked when the user clicks on the item.
+ * @param afterIconPainter [Painter] used to display an [IconButton] after the list item.
+ * @param afterIconDescription Content description of the icon.
+ */
+@Composable
+internal fun MenuItem(
+ label: String,
+ beforeIconPainter: Painter,
+ beforeIconDescription: String? = null,
+ description: String? = null,
+ state: MenuItemState = MenuItemState.ENABLED,
+ onClick: (() -> Unit)? = null,
+ afterIconPainter: Painter? = null,
+ afterIconDescription: String? = null,
+) {
+ val labelTextColor = getLabelTextColor(state = state)
+ val iconTint = getIconTint(state = state)
+ val enabled = state != MenuItemState.DISABLED
+
+ IconListItem(
+ label = label,
+ labelTextColor = labelTextColor,
+ description = description,
+ enabled = enabled,
+ onClick = onClick,
+ beforeIconPainter = beforeIconPainter,
+ beforeIconDescription = beforeIconDescription,
+ beforeIconTint = iconTint,
+ afterIconPainter = afterIconPainter,
+ afterIconDescription = afterIconDescription,
+ afterIconTint = iconTint,
+ )
+}
+
+/**
+ * An [IconListItem] wrapper for menu items in a [MenuGroup] with an optional text button at the end.
+ *
+ * @param label The label in the menu item.
+ * @param beforeIconPainter [Painter] used to display an [Icon] before the list item.
+ * @param beforeIconDescription Content description of the icon.
+ * @param description An optional description text below the label.
+ * @param state The state of the menu item to display.
+ * @param onClick Invoked when the user clicks on the item.
+ * @param afterButtonText The button text to be displayed after the list item.
+ * @param afterButtonTextColor [Color] to apply to [afterButtonText].
+ * @param onAfterButtonClick Called when the user clicks on the text button.
+ */
+@Composable
+internal fun MenuItem(
+ label: String,
+ beforeIconPainter: Painter,
+ beforeIconDescription: String? = null,
+ description: String? = null,
+ state: MenuItemState = MenuItemState.ENABLED,
+ onClick: (() -> Unit)? = null,
+ afterButtonText: String? = null,
+ afterButtonTextColor: Color = FirefoxTheme.colors.actionPrimary,
+ onAfterButtonClick: (() -> Unit)? = null,
+) {
+ val labelTextColor = getLabelTextColor(state = state)
+ val iconTint = getIconTint(state = state)
+ val enabled = state != MenuItemState.DISABLED
+
+ IconListItem(
+ label = label,
+ labelTextColor = labelTextColor,
+ description = description,
+ enabled = enabled,
+ onClick = onClick,
+ beforeIconPainter = beforeIconPainter,
+ beforeIconDescription = beforeIconDescription,
+ beforeIconTint = iconTint,
+ afterButtonText = afterButtonText,
+ afterButtonTextColor = afterButtonTextColor,
+ onAfterButtonClick = onAfterButtonClick,
+ )
+}
+
+/**
+ * Enum containing all the supported state for the menu item.
+ */
+enum class MenuItemState {
+ /**
+ * The menu item is enabled.
+ */
+ ENABLED,
+
+ /**
+ * The menu item is disabled and is not clickable.
+ */
+ DISABLED,
+
+ /**
+ * The menu item is highlighted to indicate the feature behind the menu item is active.
+ */
+ ACTIVE,
+
+ /**
+ * The menu item is highlighted to indicate the feature behind the menu item is destructive.
+ */
+ WARNING,
+}
+
+@Composable
+private fun getLabelTextColor(state: MenuItemState): Color {
+ return when (state) {
+ MenuItemState.ACTIVE -> FirefoxTheme.colors.textAccent
+ MenuItemState.WARNING -> FirefoxTheme.colors.textCritical
+ else -> FirefoxTheme.colors.textPrimary
+ }
+}
+
+@Composable
+private fun getIconTint(state: MenuItemState): Color {
+ return when (state) {
+ MenuItemState.ACTIVE -> FirefoxTheme.colors.iconAccentViolet
+ MenuItemState.WARNING -> FirefoxTheme.colors.iconCritical
+ else -> FirefoxTheme.colors.iconSecondary
+ }
+}
+
+@LightDarkPreview
+@Composable
+private fun MenuItemPreview() {
+ FirefoxTheme {
+ Column(
+ modifier = Modifier
+ .background(color = FirefoxTheme.colors.layer3)
+ .padding(16.dp),
+ ) {
+ MenuGroup {
+ for (state in MenuItemState.entries) {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_translations),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_translate_24),
+ state = state,
+ onClick = {},
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+ }
+
+ for (state in MenuItemState.entries) {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_extensions),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_extension_24),
+ state = state,
+ onClick = {},
+ afterIconPainter = painterResource(id = R.drawable.mozac_ic_chevron_right_24),
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+ }
+
+ for (state in MenuItemState.entries) {
+ MenuItem(
+ label = stringResource(id = R.string.library_bookmarks),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_bookmark_tray_fill_24),
+ state = state,
+ onClick = {},
+ afterButtonText = stringResource(id = R.string.browser_menu_edit),
+ onAfterButtonClick = {},
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+ }
+ }
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/SaveSubmenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/SaveSubmenu.kt
new file mode 100644
index 0000000000..9ceda75cea
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/SaveSubmenu.kt
@@ -0,0 +1,163 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.components.menu.compose
+
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.Arrangement
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.height
+import androidx.compose.foundation.layout.padding
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.tooling.preview.Preview
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.components.menu.compose.header.SubmenuHeader
+import org.mozilla.fenix.compose.Divider
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.theme.FirefoxTheme
+import org.mozilla.fenix.theme.Theme
+
+internal const val SAVE_MENU_ROUTE = "save_menu"
+
+@Suppress("LongParameterList")
+@Composable
+internal fun SaveSubmenu(
+ isBookmarked: Boolean,
+ onBackButtonClick: () -> Unit,
+ onBookmarkPageMenuClick: () -> Unit,
+ onEditBookmarkButtonClick: () -> Unit,
+ onAddToShortcutsMenuClick: () -> Unit,
+ onAddToHomeScreenMenuClick: () -> Unit,
+ onSaveToCollectionMenuClick: () -> Unit,
+ onSaveAsPDFMenuClick: () -> Unit,
+) {
+ Column {
+ SubmenuHeader(
+ header = stringResource(id = R.string.browser_menu_save),
+ onClick = onBackButtonClick,
+ )
+
+ Spacer(modifier = Modifier.height(8.dp))
+
+ Column(
+ modifier = Modifier
+ .padding(
+ start = 16.dp,
+ top = 12.dp,
+ end = 16.dp,
+ bottom = 32.dp,
+ ),
+ verticalArrangement = Arrangement.spacedBy(32.dp),
+ ) {
+ MenuGroup {
+ BookmarkMenuItem(
+ isBookmarked = isBookmarked,
+ onBookmarkPageMenuClick = onBookmarkPageMenuClick,
+ onEditBookmarkButtonClick = onEditBookmarkButtonClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_add_to_shortcuts),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_pin_24),
+ onClick = onAddToShortcutsMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_add_to_homescreen_2),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_add_to_homescreen_24),
+ onClick = onAddToHomeScreenMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_save_to_collection),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_collection_24),
+ onClick = onSaveToCollectionMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_save_as_pdf),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_save_file_24),
+ onClick = onSaveAsPDFMenuClick,
+ )
+ }
+ }
+ }
+}
+
+@Composable
+private fun BookmarkMenuItem(
+ isBookmarked: Boolean,
+ onBookmarkPageMenuClick: () -> Unit,
+ onEditBookmarkButtonClick: () -> Unit,
+) {
+ if (isBookmarked) {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_edit_bookmark),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_bookmark_fill_24),
+ state = MenuItemState.ACTIVE,
+ onClick = onEditBookmarkButtonClick,
+ )
+ } else {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_bookmark_this_page),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_bookmark_24),
+ onClick = onBookmarkPageMenuClick,
+ )
+ }
+}
+
+@LightDarkPreview
+@Composable
+private fun SaveSubmenuPreview() {
+ FirefoxTheme {
+ Column(
+ modifier = Modifier.background(color = FirefoxTheme.colors.layer3),
+ ) {
+ SaveSubmenu(
+ isBookmarked = false,
+ onBackButtonClick = {},
+ onBookmarkPageMenuClick = {},
+ onEditBookmarkButtonClick = {},
+ onAddToShortcutsMenuClick = {},
+ onAddToHomeScreenMenuClick = {},
+ onSaveToCollectionMenuClick = {},
+ onSaveAsPDFMenuClick = {},
+ )
+ }
+ }
+}
+
+@Preview
+@Composable
+private fun SaveSubmenuPrivatePreview() {
+ FirefoxTheme(theme = Theme.Private) {
+ Column(
+ modifier = Modifier.background(color = FirefoxTheme.colors.layer3),
+ ) {
+ SaveSubmenu(
+ isBookmarked = false,
+ onBackButtonClick = {},
+ onBookmarkPageMenuClick = {},
+ onEditBookmarkButtonClick = {},
+ onAddToShortcutsMenuClick = {},
+ onAddToHomeScreenMenuClick = {},
+ onSaveToCollectionMenuClick = {},
+ onSaveAsPDFMenuClick = {},
+ )
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/ToolsSubmenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/ToolsSubmenu.kt
new file mode 100644
index 0000000000..7f80d5c3e9
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/ToolsSubmenu.kt
@@ -0,0 +1,184 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.components.menu.compose
+
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.Arrangement
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.height
+import androidx.compose.foundation.layout.padding
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.tooling.preview.Preview
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.components.menu.compose.header.SubmenuHeader
+import org.mozilla.fenix.compose.Divider
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.theme.FirefoxTheme
+import org.mozilla.fenix.theme.Theme
+
+internal const val TOOLS_MENU_ROUTE = "tools_menu"
+
+@Suppress("LongParameterList")
+@Composable
+internal fun ToolsSubmenu(
+ isReaderViewActive: Boolean,
+ isTranslated: Boolean,
+ onBackButtonClick: () -> Unit,
+ onReaderViewMenuClick: () -> Unit,
+ onTranslatePageMenuClick: () -> Unit,
+ onPrintMenuClick: () -> Unit,
+ onShareMenuClick: () -> Unit,
+ onOpenInAppMenuClick: () -> Unit,
+) {
+ Column {
+ SubmenuHeader(
+ header = stringResource(id = R.string.browser_menu_tools),
+ onClick = onBackButtonClick,
+ )
+
+ Spacer(modifier = Modifier.height(8.dp))
+
+ Column(
+ modifier = Modifier
+ .padding(
+ start = 16.dp,
+ top = 12.dp,
+ end = 16.dp,
+ bottom = 32.dp,
+ ),
+ verticalArrangement = Arrangement.spacedBy(32.dp),
+ ) {
+ MenuGroup {
+ ReaderViewMenuItem(
+ isReaderViewActive = isReaderViewActive,
+ onClick = onReaderViewMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ TranslationMenuItem(
+ isTranslated = isTranslated,
+ onClick = onTranslatePageMenuClick,
+ )
+ }
+
+ MenuGroup {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_print),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_print_24),
+ onClick = onPrintMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_share_2),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_share_android_24),
+ onClick = onShareMenuClick,
+ )
+
+ Divider(color = FirefoxTheme.colors.borderSecondary)
+
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_open_app_link),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_more_grid_24),
+ onClick = onOpenInAppMenuClick,
+ )
+ }
+ }
+ }
+}
+
+@Composable
+private fun ReaderViewMenuItem(
+ isReaderViewActive: Boolean,
+ onClick: () -> Unit,
+) {
+ if (isReaderViewActive) {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_turn_off_reader_view),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_reader_view_fill_24),
+ state = MenuItemState.ACTIVE,
+ onClick = onClick,
+ )
+ } else {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_turn_on_reader_view),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_reader_view_24),
+ onClick = onClick,
+ )
+ }
+}
+
+@Composable
+private fun TranslationMenuItem(
+ isTranslated: Boolean,
+ onClick: () -> Unit,
+) {
+ if (isTranslated) {
+ MenuItem(
+ label = stringResource(
+ id = R.string.browser_menu_translated_to,
+ stringResource(id = R.string.app_name),
+ ),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_translate_24),
+ state = MenuItemState.ACTIVE,
+ onClick = onClick,
+ )
+ } else {
+ MenuItem(
+ label = stringResource(id = R.string.browser_menu_translate_page),
+ beforeIconPainter = painterResource(id = R.drawable.mozac_ic_translate_24),
+ onClick = onClick,
+ )
+ }
+}
+
+@LightDarkPreview
+@Composable
+private fun ToolsSubmenuPreview() {
+ FirefoxTheme {
+ Column(
+ modifier = Modifier.background(color = FirefoxTheme.colors.layer3),
+ ) {
+ ToolsSubmenu(
+ isReaderViewActive = false,
+ isTranslated = false,
+ onBackButtonClick = {},
+ onReaderViewMenuClick = {},
+ onTranslatePageMenuClick = {},
+ onPrintMenuClick = {},
+ onShareMenuClick = {},
+ onOpenInAppMenuClick = {},
+ )
+ }
+ }
+}
+
+@Preview
+@Composable
+private fun ToolsSubmenuPrivatePreview() {
+ FirefoxTheme(theme = Theme.Private) {
+ Column(
+ modifier = Modifier.background(color = FirefoxTheme.colors.layer3),
+ ) {
+ ToolsSubmenu(
+ isReaderViewActive = false,
+ isTranslated = false,
+ onBackButtonClick = {},
+ onReaderViewMenuClick = {},
+ onTranslatePageMenuClick = {},
+ onPrintMenuClick = {},
+ onShareMenuClick = {},
+ onOpenInAppMenuClick = {},
+ )
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MenuHeader.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MenuHeader.kt
index 1c31f8b87f..a9391696d9 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MenuHeader.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MenuHeader.kt
@@ -20,10 +20,10 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
+import mozilla.components.service.fxa.manager.AccountState
+import mozilla.components.service.fxa.manager.AccountState.NotAuthenticated
import mozilla.components.service.fxa.store.Account
import org.mozilla.fenix.R
-import org.mozilla.fenix.components.accounts.AccountState
-import org.mozilla.fenix.components.accounts.AccountState.NO_ACCOUNT
import org.mozilla.fenix.compose.Divider
import org.mozilla.fenix.compose.annotation.LightDarkPreview
import org.mozilla.fenix.theme.FirefoxTheme
@@ -33,7 +33,7 @@ import org.mozilla.fenix.theme.Theme
internal fun MenuHeader(
account: Account?,
accountState: AccountState,
- onSignInButtonClick: () -> Unit,
+ onMozillaAccountButtonClick: () -> Unit,
onHelpButtonClick: () -> Unit,
onSettingsButtonClick: () -> Unit,
) {
@@ -46,7 +46,7 @@ internal fun MenuHeader(
MozillaAccountMenuButton(
account = account,
accountState = accountState,
- onSignInButtonClick = onSignInButtonClick,
+ onClick = onMozillaAccountButtonClick,
modifier = Modifier.weight(1f),
)
@@ -86,8 +86,8 @@ private fun MenuHeaderPreview() {
) {
MenuHeader(
account = null,
- accountState = NO_ACCOUNT,
- onSignInButtonClick = {},
+ accountState = NotAuthenticated,
+ onMozillaAccountButtonClick = {},
onHelpButtonClick = {},
onSettingsButtonClick = {},
)
@@ -105,8 +105,8 @@ private fun MenuHeaderPrivatePreview() {
) {
MenuHeader(
account = null,
- accountState = NO_ACCOUNT,
- onSignInButtonClick = {},
+ accountState = NotAuthenticated,
+ onMozillaAccountButtonClick = {},
onHelpButtonClick = {},
onSettingsButtonClick = {},
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MozillaAccountMenuButton.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MozillaAccountMenuButton.kt
index 9cf00e248a..4e8663c81a 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MozillaAccountMenuButton.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/MozillaAccountMenuButton.kt
@@ -12,7 +12,9 @@ import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.defaultMinSize
import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
+import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.Icon
import androidx.compose.material.Text
@@ -24,24 +26,28 @@ import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
+import mozilla.components.service.fxa.manager.AccountState
+import mozilla.components.service.fxa.manager.AccountState.Authenticated
+import mozilla.components.service.fxa.manager.AccountState.Authenticating
+import mozilla.components.service.fxa.manager.AccountState.AuthenticationProblem
+import mozilla.components.service.fxa.manager.AccountState.NotAuthenticated
import mozilla.components.service.fxa.store.Account
import org.mozilla.fenix.R
-import org.mozilla.fenix.components.accounts.AccountState
-import org.mozilla.fenix.components.accounts.AccountState.AUTHENTICATED
-import org.mozilla.fenix.components.accounts.AccountState.NEEDS_REAUTHENTICATION
-import org.mozilla.fenix.components.accounts.AccountState.NO_ACCOUNT
+import org.mozilla.fenix.compose.Image
import org.mozilla.fenix.compose.annotation.LightDarkPreview
import org.mozilla.fenix.theme.FirefoxTheme
import org.mozilla.fenix.theme.Theme
private val BUTTON_HEIGHT = 56.dp
private val BUTTON_SHAPE = RoundedCornerShape(size = 8.dp)
+private val ICON_SHAPE = RoundedCornerShape(size = 24.dp)
+private val AVATAR_SIZE = 24.dp
@Composable
internal fun MozillaAccountMenuButton(
account: Account?,
accountState: AccountState,
- onSignInButtonClick: () -> Unit,
+ onClick: () -> Unit,
modifier: Modifier = Modifier,
) {
Row(
@@ -51,13 +57,13 @@ internal fun MozillaAccountMenuButton(
shape = BUTTON_SHAPE,
)
.clip(shape = BUTTON_SHAPE)
- .clickable { onSignInButtonClick() }
+ .clickable { onClick() }
.defaultMinSize(minHeight = BUTTON_HEIGHT),
verticalAlignment = Alignment.CenterVertically,
) {
Spacer(modifier = Modifier.width(4.dp))
- AvatarIcon()
+ AvatarIcon(account)
Column(
modifier = Modifier
@@ -65,7 +71,7 @@ internal fun MozillaAccountMenuButton(
.weight(1f),
) {
when (accountState) {
- NO_ACCOUNT -> {
+ NotAuthenticated -> {
Text(
text = stringResource(id = R.string.browser_menu_sign_in),
color = FirefoxTheme.colors.textSecondary,
@@ -81,7 +87,7 @@ internal fun MozillaAccountMenuButton(
)
}
- NEEDS_REAUTHENTICATION -> {
+ AuthenticationProblem -> {
Text(
text = stringResource(id = R.string.browser_menu_sign_back_in_to_sync),
color = FirefoxTheme.colors.textSecondary,
@@ -91,13 +97,13 @@ internal fun MozillaAccountMenuButton(
Text(
text = stringResource(id = R.string.browser_menu_syncing_paused_caption),
- color = FirefoxTheme.colors.textWarning,
+ color = FirefoxTheme.colors.textCritical,
maxLines = 2,
style = FirefoxTheme.typography.caption,
)
}
- AUTHENTICATED -> {
+ Authenticated -> {
Text(
text = account?.displayName ?: account?.email
?: stringResource(id = R.string.browser_menu_account_settings),
@@ -106,14 +112,16 @@ internal fun MozillaAccountMenuButton(
style = FirefoxTheme.typography.headline7,
)
}
+
+ is Authenticating -> Unit
}
}
- if (accountState == NEEDS_REAUTHENTICATION) {
+ if (accountState == AuthenticationProblem) {
Icon(
painter = painterResource(R.drawable.mozac_ic_warning_fill_24),
contentDescription = null,
- tint = FirefoxTheme.colors.iconWarning,
+ tint = FirefoxTheme.colors.iconCritical,
)
Spacer(modifier = Modifier.width(8.dp))
@@ -122,14 +130,14 @@ internal fun MozillaAccountMenuButton(
}
@Composable
-private fun AvatarIcon() {
+private fun FallbackAvatarIcon() {
Icon(
painter = painterResource(id = R.drawable.mozac_ic_avatar_circle_24),
contentDescription = null,
modifier = Modifier
.background(
color = FirefoxTheme.colors.layer2,
- shape = RoundedCornerShape(size = 24.dp),
+ shape = ICON_SHAPE,
)
.padding(all = 4.dp),
tint = FirefoxTheme.colors.iconSecondary,
@@ -137,6 +145,30 @@ private fun AvatarIcon() {
}
@Composable
+private fun AvatarIcon(account: Account?) {
+ val avatarUrl = account?.avatar?.url
+
+ if (avatarUrl != null) {
+ Image(
+ url = avatarUrl,
+ modifier = Modifier
+ .background(
+ color = FirefoxTheme.colors.layer2,
+ shape = ICON_SHAPE,
+ )
+ .padding(all = 4.dp)
+ .size(AVATAR_SIZE)
+ .clip(CircleShape),
+ targetSize = AVATAR_SIZE,
+ placeholder = { FallbackAvatarIcon() },
+ fallback = { FallbackAvatarIcon() },
+ )
+ } else {
+ FallbackAvatarIcon()
+ }
+}
+
+@Composable
private fun MenuHeaderPreviewContent() {
Column(
modifier = Modifier
@@ -146,14 +178,14 @@ private fun MenuHeaderPreviewContent() {
) {
MozillaAccountMenuButton(
account = null,
- accountState = NO_ACCOUNT,
- onSignInButtonClick = {},
+ accountState = NotAuthenticated,
+ onClick = {},
)
MozillaAccountMenuButton(
account = null,
- accountState = NEEDS_REAUTHENTICATION,
- onSignInButtonClick = {},
+ accountState = AuthenticationProblem,
+ onClick = {},
)
MozillaAccountMenuButton(
@@ -165,8 +197,8 @@ private fun MenuHeaderPreviewContent() {
currentDeviceId = null,
sessionToken = null,
),
- accountState = AUTHENTICATED,
- onSignInButtonClick = {},
+ accountState = Authenticated,
+ onClick = {},
)
MozillaAccountMenuButton(
@@ -178,8 +210,8 @@ private fun MenuHeaderPreviewContent() {
currentDeviceId = null,
sessionToken = null,
),
- accountState = AUTHENTICATED,
- onSignInButtonClick = {},
+ accountState = Authenticated,
+ onClick = {},
)
MozillaAccountMenuButton(
@@ -191,8 +223,8 @@ private fun MenuHeaderPreviewContent() {
currentDeviceId = null,
sessionToken = null,
),
- accountState = AUTHENTICATED,
- onSignInButtonClick = {},
+ accountState = Authenticated,
+ onClick = {},
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/SubmenuHeader.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/SubmenuHeader.kt
new file mode 100644
index 0000000000..6b47ea17db
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/compose/header/SubmenuHeader.kt
@@ -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/. */
+
+package org.mozilla.fenix.components.menu.compose.header
+
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.defaultMinSize
+import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.layout.width
+import androidx.compose.material.Icon
+import androidx.compose.material.IconButton
+import androidx.compose.material.Text
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.semantics.heading
+import androidx.compose.ui.semantics.semantics
+import androidx.compose.ui.tooling.preview.Preview
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.theme.FirefoxTheme
+import org.mozilla.fenix.theme.Theme
+
+@Composable
+internal fun SubmenuHeader(
+ header: String,
+ onClick: () -> Unit,
+) {
+ Row(
+ modifier = Modifier
+ .padding(start = 4.dp, end = 16.dp)
+ .defaultMinSize(minHeight = 56.dp),
+ verticalAlignment = Alignment.CenterVertically,
+ ) {
+ IconButton(
+ onClick = { onClick() },
+ ) {
+ Icon(
+ painter = painterResource(id = R.drawable.mozac_ic_back_24),
+ contentDescription = null,
+ tint = FirefoxTheme.colors.iconSecondary,
+ )
+ }
+
+ Spacer(modifier = Modifier.width(4.dp))
+
+ Text(
+ text = header,
+ modifier = Modifier
+ .weight(1f)
+ .semantics { heading() },
+ color = FirefoxTheme.colors.textSecondary,
+ style = FirefoxTheme.typography.headline7,
+ )
+ }
+}
+
+@LightDarkPreview
+@Composable
+private fun SubmenuHeaderPreview() {
+ FirefoxTheme {
+ Column(
+ modifier = Modifier
+ .background(color = FirefoxTheme.colors.layer3),
+ ) {
+ SubmenuHeader(
+ header = "sub-menu header",
+ onClick = {},
+ )
+ }
+ }
+}
+
+@Preview
+@Composable
+private fun SubmenuMenuHeaderPrivatePreview() {
+ FirefoxTheme(theme = Theme.Private) {
+ Column(
+ modifier = Modifier
+ .background(color = FirefoxTheme.colors.layer3),
+ ) {
+ SubmenuHeader(
+ header = "sub-menu header",
+ onClick = {},
+ )
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuDialogMiddleware.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuDialogMiddleware.kt
new file mode 100644
index 0000000000..16df4ed576
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuDialogMiddleware.kt
@@ -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/. */
+
+package org.mozilla.fenix.components.menu.middleware
+
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.launch
+import mozilla.components.browser.state.ext.getUrl
+import mozilla.components.concept.storage.BookmarksStorage
+import mozilla.components.lib.state.Middleware
+import mozilla.components.lib.state.MiddlewareContext
+import mozilla.components.lib.state.Store
+import org.mozilla.fenix.components.bookmarks.BookmarksUseCase
+import org.mozilla.fenix.components.menu.store.BookmarkState
+import org.mozilla.fenix.components.menu.store.MenuAction
+import org.mozilla.fenix.components.menu.store.MenuState
+
+/**
+ * [Middleware] implementation for handling [MenuAction] and managing the [MenuState] for the menu
+ * dialog.
+ *
+ * @param bookmarksStorage An instance of the [BookmarksStorage] used
+ * to query matching bookmarks.
+ * @param addBookmarkUseCase The [BookmarksUseCase.AddBookmarksUseCase] for adding the
+ * selected tab as a bookmark.
+ * @param scope [CoroutineScope] used to launch coroutines.
+ */
+class MenuDialogMiddleware(
+ private val bookmarksStorage: BookmarksStorage,
+ private val addBookmarkUseCase: BookmarksUseCase.AddBookmarksUseCase,
+ private val scope: CoroutineScope = CoroutineScope(Dispatchers.IO),
+) : Middleware<MenuState, MenuAction> {
+
+ override fun invoke(
+ context: MiddlewareContext<MenuState, MenuAction>,
+ next: (MenuAction) -> Unit,
+ action: MenuAction,
+ ) {
+ when (action) {
+ is MenuAction.InitAction -> initialize(context.store)
+ is MenuAction.AddBookmark -> addBookmark(context.store)
+ else -> Unit
+ }
+
+ next(action)
+ }
+
+ private fun initialize(
+ store: Store<MenuState, MenuAction>,
+ ) = scope.launch {
+ val url = store.state.browserMenuState?.selectedTab?.content?.url ?: return@launch
+ val bookmark =
+ bookmarksStorage.getBookmarksWithUrl(url).firstOrNull { it.url == url } ?: return@launch
+
+ store.dispatch(
+ MenuAction.UpdateBookmarkState(
+ bookmarkState = BookmarkState(
+ guid = bookmark.guid,
+ isBookmarked = true,
+ ),
+ ),
+ )
+ }
+
+ private fun addBookmark(
+ store: Store<MenuState, MenuAction>,
+ ) = scope.launch {
+ val browserMenuState = store.state.browserMenuState ?: return@launch
+
+ if (browserMenuState.bookmarkState.isBookmarked) {
+ return@launch
+ }
+
+ val selectedTab = browserMenuState.selectedTab
+ val url = selectedTab.getUrl() ?: return@launch
+
+ val guid = addBookmarkUseCase(
+ url = url,
+ title = selectedTab.content.title,
+ )
+
+ store.dispatch(
+ MenuAction.UpdateBookmarkState(
+ BookmarkState(
+ guid = guid,
+ isBookmarked = true,
+ ),
+ ),
+ )
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuNavigationMiddleware.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuNavigationMiddleware.kt
index 7c0a03d5ab..21a361bd0b 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuNavigationMiddleware.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuNavigationMiddleware.kt
@@ -5,18 +5,35 @@
package org.mozilla.fenix.components.menu.middleware
import androidx.navigation.NavController
+import androidx.navigation.NavHostController
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import mozilla.appservices.places.BookmarkRoot
+import mozilla.components.browser.state.ext.getUrl
+import mozilla.components.concept.engine.prompt.ShareData
import mozilla.components.lib.state.Middleware
import mozilla.components.lib.state.MiddlewareContext
+import mozilla.components.service.fxa.manager.AccountState.Authenticated
+import mozilla.components.service.fxa.manager.AccountState.Authenticating
+import mozilla.components.service.fxa.manager.AccountState.AuthenticationProblem
+import mozilla.components.service.fxa.manager.AccountState.NotAuthenticated
import org.mozilla.fenix.R
+import org.mozilla.fenix.browser.BrowserFragmentDirections
+import org.mozilla.fenix.browser.browsingmode.BrowsingMode
+import org.mozilla.fenix.browser.browsingmode.BrowsingModeManager
+import org.mozilla.fenix.components.menu.BrowserNavigationParams
import org.mozilla.fenix.components.menu.MenuDialogFragmentDirections
+import org.mozilla.fenix.components.menu.compose.EXTENSIONS_MENU_ROUTE
+import org.mozilla.fenix.components.menu.compose.SAVE_MENU_ROUTE
+import org.mozilla.fenix.components.menu.compose.TOOLS_MENU_ROUTE
import org.mozilla.fenix.components.menu.store.MenuAction
import org.mozilla.fenix.components.menu.store.MenuState
import org.mozilla.fenix.components.menu.store.MenuStore
+import org.mozilla.fenix.components.menu.toFenixFxAEntryPoint
import org.mozilla.fenix.ext.nav
+import org.mozilla.fenix.settings.SupportUtils
+import org.mozilla.fenix.settings.SupportUtils.AMO_HOMEPAGE_FOR_ANDROID
import org.mozilla.fenix.settings.SupportUtils.SumoTopic
/**
@@ -24,25 +41,62 @@ import org.mozilla.fenix.settings.SupportUtils.SumoTopic
* dispatched to the [MenuStore].
*
* @param navController [NavController] used for navigation.
- * @param openSumoTopic Callback to open the provided [SumoTopic] in a new browser tab.
+ * @param navHostController [NavHostController] used for Compose navigation.
+ * @param browsingModeManager [BrowsingModeManager] used for setting the browsing mode.
+ * @param openToBrowser Callback to open the provided [BrowserNavigationParams]
+ * in a new browser tab.
* @param scope [CoroutineScope] used to launch coroutines.
*/
class MenuNavigationMiddleware(
private val navController: NavController,
- private val openSumoTopic: (topic: SumoTopic) -> Unit,
+ private val navHostController: NavHostController,
+ private val browsingModeManager: BrowsingModeManager,
+ private val openToBrowser: (params: BrowserNavigationParams) -> Unit,
private val scope: CoroutineScope = CoroutineScope(Dispatchers.Main),
) : Middleware<MenuState, MenuAction> {
+ @Suppress("CyclomaticComplexMethod", "LongMethod")
override fun invoke(
context: MiddlewareContext<MenuState, MenuAction>,
next: (MenuAction) -> Unit,
action: MenuAction,
) {
+ // Get the current state before further processing of the chain of actions.
+ // This is to ensure that any navigation action will be using correct
+ // state properties before they are modified due to other actions being
+ // dispatched and processes.
+ val currentState = context.state
+
next(action)
scope.launch {
when (action) {
- is MenuAction.Navigate.Help -> openSumoTopic(SumoTopic.HELP)
+ is MenuAction.Navigate.MozillaAccount -> {
+ when (action.accountState) {
+ Authenticated -> navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalAccountSettingsFragment(),
+ )
+
+ AuthenticationProblem -> navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalAccountProblemFragment(
+ entrypoint = action.accesspoint.toFenixFxAEntryPoint(),
+ ),
+ )
+
+ is Authenticating, NotAuthenticated -> navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalTurnOnSync(
+ entrypoint = action.accesspoint.toFenixFxAEntryPoint(),
+ ),
+ )
+ }
+ }
+
+ is MenuAction.Navigate.Help -> openToBrowser(
+ BrowserNavigationParams(sumoTopic = SumoTopic.HELP),
+ )
is MenuAction.Navigate.Settings -> navController.nav(
R.id.menuDialogFragment,
@@ -69,8 +123,82 @@ class MenuNavigationMiddleware(
MenuDialogFragmentDirections.actionGlobalSavedLoginsAuthFragment(),
)
+ is MenuAction.Navigate.CustomizeHomepage -> navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalHomeSettingsFragment(),
+ )
+
+ is MenuAction.Navigate.ReleaseNotes -> openToBrowser(
+ BrowserNavigationParams(url = SupportUtils.WHATS_NEW_URL),
+ )
+
+ is MenuAction.Navigate.Tools -> navHostController.navigate(route = TOOLS_MENU_ROUTE)
+
+ is MenuAction.Navigate.Save -> navHostController.navigate(route = SAVE_MENU_ROUTE)
+
+ is MenuAction.Navigate.Extensions -> navHostController.navigate(route = EXTENSIONS_MENU_ROUTE)
+
+ is MenuAction.Navigate.Back -> navHostController.popBackStack()
+
+ is MenuAction.Navigate.EditBookmark -> {
+ currentState.browserMenuState?.bookmarkState?.guid?.let { guidToEdit ->
+ navController.nav(
+ R.id.menuDialogFragment,
+ BrowserFragmentDirections.actionGlobalBookmarkEditFragment(
+ guidToEdit = guidToEdit,
+ requiresSnackbarPaddingForToolbar = true,
+ ),
+ )
+ }
+ }
+
+ is MenuAction.Navigate.Translate -> navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionMenuDialogFragmentToTranslationsDialogFragment(),
+ )
+
+ is MenuAction.Navigate.Share -> {
+ currentState.browserMenuState?.selectedTab?.let { selectedTab ->
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalShareFragment(
+ sessionId = selectedTab.id,
+ data = arrayOf(
+ ShareData(
+ url = selectedTab.getUrl(),
+ title = selectedTab.content.title,
+ ),
+ ),
+ showPage = true,
+ ),
+ )
+ }
+ }
+
+ is MenuAction.Navigate.ManageExtensions -> navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalAddonsManagementFragment(),
+ )
+
+ is MenuAction.Navigate.DiscoverMoreExtensions -> openToBrowser(
+ BrowserNavigationParams(url = AMO_HOMEPAGE_FOR_ANDROID),
+ )
+
+ is MenuAction.Navigate.NewTab -> openNewTab(isPrivate = false)
+
+ is MenuAction.Navigate.NewPrivateTab -> openNewTab(isPrivate = true)
+
else -> Unit
}
}
}
+
+ private fun openNewTab(isPrivate: Boolean) {
+ browsingModeManager.mode = BrowsingMode.fromBoolean(isPrivate)
+
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalHome(focusOnAddressBar = true),
+ )
+ }
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuAction.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuAction.kt
index 1400deeae1..021bb63687 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuAction.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuAction.kt
@@ -5,6 +5,8 @@
package org.mozilla.fenix.components.menu.store
import mozilla.components.lib.state.Action
+import mozilla.components.service.fxa.manager.AccountState
+import org.mozilla.fenix.components.menu.MenuAccessPoint
/**
* Actions to dispatch through the [MenuStore] to modify the [MenuState].
@@ -12,11 +14,24 @@ import mozilla.components.lib.state.Action
sealed class MenuAction : Action {
/**
- * Updates whether or not the current selected tab is bookmarked.
+ * [MenuAction] dispatched to indicate that the store is initialized and
+ * ready to use. This action is dispatched automatically before any other
+ * action is processed. Its main purpose is to trigger initialization logic
+ * in middlewares.
+ */
+ data object InitAction : MenuAction()
+
+ /**
+ * [MenuAction] dispatched when a bookmark is to be added.
+ */
+ data object AddBookmark : MenuAction()
+
+ /**
+ * [MenuAction] dispatched when a bookmark state is updated.
*
- * @property isBookmarked Whether or not the current selected is bookmarked.
+ * @property bookmarkState The new [BookmarkState] to be updated.
*/
- data class UpdateBookmarked(val isBookmarked: Boolean) : MenuAction()
+ data class UpdateBookmarkState(val bookmarkState: BookmarkState) : MenuAction()
/**
* [MenuAction] dispatched when a navigation event occurs for a specific destination.
@@ -24,6 +39,17 @@ sealed class MenuAction : Action {
sealed class Navigate : MenuAction() {
/**
+ * [Navigate] action dispatched when navigating to Mozilla account.
+ *
+ * @property accountState The [AccountState] of a Mozilla account.
+ * @property accesspoint The access point that was used to navigate to the menu.
+ */
+ data class MozillaAccount(
+ val accountState: AccountState,
+ val accesspoint: MenuAccessPoint,
+ ) : Navigate()
+
+ /**
* [Navigate] action dispatched when navigating to the help SUMO article.
*/
data object Help : Navigate()
@@ -52,5 +78,70 @@ sealed class MenuAction : Action {
* [Navigate] action dispatched when navigating to passwords.
*/
data object Passwords : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to customize homepage.
+ */
+ data object CustomizeHomepage : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to release notes.
+ */
+ data object ReleaseNotes : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to the tools submenu.
+ */
+ data object Tools : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to the save submenu.
+ */
+ data object Save : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to the extensions submenu.
+ */
+ data object Extensions : Navigate()
+
+ /**
+ * [Navigate] action dispatched when a back navigation event occurs.
+ */
+ data object Back : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to edit the existing bookmark.
+ */
+ data object EditBookmark : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to translations dialog.
+ */
+ data object Translate : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to the share sheet.
+ */
+ data object Share : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to the extensions manager.
+ */
+ data object ManageExtensions : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to the AMO page.
+ */
+ data object DiscoverMoreExtensions : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to the new tab.
+ */
+ data object NewTab : Navigate()
+
+ /**
+ * [Navigate] action dispatched when navigating to the new private tab.
+ */
+ data object NewPrivateTab : Navigate()
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuState.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuState.kt
index 0f5b7a61e3..7635eebaae 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuState.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuState.kt
@@ -4,13 +4,36 @@
package org.mozilla.fenix.components.menu.store
+import mozilla.components.browser.state.state.TabSessionState
import mozilla.components.lib.state.State
/**
* Value type that represents the state of the menu.
*
- * @property isBookmarked Whether or not the current selected tab is bookmarked.
+ * @property browserMenuState The [BrowserMenuState] of the current browser session if any.
*/
data class MenuState(
- val isBookmarked: Boolean = false,
+ val browserMenuState: BrowserMenuState? = null,
) : State
+
+/**
+ * Value type that represents the state of the browser menu.
+ *
+ * @property selectedTab The current selected [TabSessionState].
+ * @property bookmarkState The [BookmarkState] of the selected tab.
+ */
+data class BrowserMenuState(
+ val selectedTab: TabSessionState,
+ val bookmarkState: BookmarkState = BookmarkState(),
+)
+
+/**
+ * Value type that represents the bookmark state of a tab.
+ *
+ * @property guid The id of the bookmark.
+ * @property isBookmarked Whether or not the selected tab is bookmarked.
+ */
+data class BookmarkState(
+ val guid: String? = null,
+ val isBookmarked: Boolean = false,
+)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuStore.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuStore.kt
index 14cca54e61..bc2c5b9037 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuStore.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/store/MenuStore.kt
@@ -4,6 +4,7 @@
package org.mozilla.fenix.components.menu.store
+import androidx.annotation.VisibleForTesting
import mozilla.components.lib.state.Middleware
import mozilla.components.lib.state.Store
@@ -13,16 +14,32 @@ import mozilla.components.lib.state.Store
class MenuStore(
initialState: MenuState,
middleware: List<Middleware<MenuState, MenuAction>> = listOf(),
-) :
- Store<MenuState, MenuAction>(
- initialState = initialState,
- reducer = ::reducer,
- middleware = middleware,
- )
+) : Store<MenuState, MenuAction>(
+ initialState = initialState,
+ reducer = ::reducer,
+ middleware = middleware,
+) {
+ init {
+ dispatch(MenuAction.InitAction)
+ }
+}
private fun reducer(state: MenuState, action: MenuAction): MenuState {
return when (action) {
- is MenuAction.UpdateBookmarked -> state.copy(isBookmarked = action.isBookmarked)
- is MenuAction.Navigate -> state
+ is MenuAction.InitAction,
+ is MenuAction.AddBookmark,
+ is MenuAction.Navigate,
+ -> state
+
+ is MenuAction.UpdateBookmarkState -> state.copyWithBrowserMenuState {
+ it.copy(bookmarkState = action.bookmarkState)
+ }
}
}
+
+@VisibleForTesting
+internal inline fun MenuState.copyWithBrowserMenuState(
+ crossinline update: (BrowserMenuState) -> BrowserMenuState,
+): MenuState {
+ return this.copy(browserMenuState = this.browserMenuState?.let { update(it) })
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarController.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarController.kt
index 63cec2f8d7..78e3a7c44c 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarController.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarController.kt
@@ -6,6 +6,7 @@ package org.mozilla.fenix.components.toolbar
import androidx.navigation.NavController
import mozilla.components.browser.state.action.ContentAction
+import mozilla.components.browser.state.ext.getUrl
import mozilla.components.browser.state.selector.findCustomTabOrSelectedTab
import mozilla.components.browser.state.selector.findTab
import mozilla.components.browser.state.selector.getNormalOrPrivateTabs
@@ -233,18 +234,20 @@ class DefaultBrowserToolbarController(
override fun handleTranslationsButtonClick() {
Translations.action.record(Translations.ActionExtra("main_flow_toolbar"))
val directions =
- BrowserFragmentDirections.actionBrowserFragmentToTranslationsDialogFragment(
- sessionId = currentSession?.id,
- )
+ BrowserFragmentDirections.actionBrowserFragmentToTranslationsDialogFragment()
navController.navigateSafe(R.id.browserFragment, directions)
}
override fun onShareActionClicked() {
+ val sessionId = currentSession?.id
+ val url = sessionId?.let {
+ store.state.findTab(it)?.getUrl()
+ }
val directions = NavGraphDirections.actionGlobalShareFragment(
- sessionId = currentSession?.id,
+ sessionId = sessionId,
data = arrayOf(
ShareData(
- url = getProperUrl(currentSession),
+ url = url,
title = currentSession?.content?.title,
),
),
@@ -253,17 +256,6 @@ class DefaultBrowserToolbarController(
navController.navigate(directions)
}
- private fun getProperUrl(currentSession: SessionState?): String? {
- return currentSession?.id?.let {
- val currentTab = store.state.findTab(it)
- if (currentTab?.readerState?.active == true) {
- currentTab.readerState.activeUrl
- } else {
- currentSession.content.url
- }
- }
- }
-
companion object {
internal const val TELEMETRY_BROWSER_IDENTIFIER = "browserMenu"
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt
index 56d65453fe..a214718ba1 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt
@@ -8,6 +8,7 @@ import android.content.Intent
import android.view.ViewGroup
import androidx.annotation.VisibleForTesting
import androidx.appcompat.app.AlertDialog
+import androidx.fragment.app.Fragment
import androidx.navigation.NavController
import com.google.android.material.snackbar.Snackbar
import kotlinx.coroutines.CoroutineScope
@@ -16,10 +17,10 @@ import kotlinx.coroutines.MainScope
import kotlinx.coroutines.launch
import mozilla.appservices.places.BookmarkRoot
import mozilla.components.browser.state.action.EngineAction
+import mozilla.components.browser.state.ext.getUrl
import mozilla.components.browser.state.selector.findCustomTabOrSelectedTab
import mozilla.components.browser.state.selector.findTab
import mozilla.components.browser.state.selector.selectedTab
-import mozilla.components.browser.state.state.SessionState
import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.concept.engine.EngineSession.LoadUrlFlags
import mozilla.components.concept.engine.prompt.ShareData
@@ -51,6 +52,7 @@ import org.mozilla.fenix.ext.getRootView
import org.mozilla.fenix.ext.nav
import org.mozilla.fenix.ext.navigateSafe
import org.mozilla.fenix.ext.openSetDefaultBrowserOption
+import org.mozilla.fenix.settings.biometric.bindBiometricsCredentialsPromptOrShowWarning
import org.mozilla.fenix.settings.deletebrowsingdata.deleteAndQuit
import org.mozilla.fenix.utils.Settings
@@ -63,6 +65,7 @@ interface BrowserToolbarMenuController {
@Suppress("LargeClass", "ForbiddenComment", "LongParameterList")
class DefaultBrowserToolbarMenuController(
+ private val fragment: Fragment,
private val store: BrowserStore,
private val activity: HomeActivity,
private val navController: NavController,
@@ -79,7 +82,8 @@ class DefaultBrowserToolbarMenuController(
private val tabCollectionStorage: TabCollectionStorage,
private val topSitesStorage: DefaultTopSitesStorage,
private val pinnedSiteStorage: PinnedSiteStorage,
- private val browserStore: BrowserStore,
+ private val onShowPinVerification: (Intent) -> Unit,
+ private val onBiometricAuthenticationSuccessful: () -> Unit,
) : BrowserToolbarMenuController {
private val currentSession
@@ -214,11 +218,15 @@ class DefaultBrowserToolbarMenuController(
}
}
is ToolbarMenu.Item.Share -> {
+ val sessionId = currentSession?.id
+ val url = sessionId?.let {
+ store.state.findTab(it)?.getUrl()
+ }
val directions = NavGraphDirections.actionGlobalShareFragment(
- sessionId = currentSession?.id,
+ sessionId = sessionId,
data = arrayOf(
ShareData(
- url = getProperUrl(currentSession),
+ url = url,
title = currentSession?.content?.title,
),
),
@@ -257,9 +265,9 @@ class DefaultBrowserToolbarMenuController(
}
}
is ToolbarMenu.Item.OpenInRegularTab -> {
- currentSession?.let { session ->
- getProperUrl(session)?.let { url ->
- tabsUseCases.migratePrivateTabUseCase.invoke(session.id, url)
+ currentSession?.id?.let { sessionId ->
+ store.state.findTab(sessionId)?.getUrl()?.let { url ->
+ tabsUseCases.migratePrivateTabUseCase.invoke(sessionId, url)
}
}
}
@@ -350,7 +358,7 @@ class DefaultBrowserToolbarMenuController(
}
is ToolbarMenu.Item.Bookmark -> {
store.state.selectedTab?.let {
- getProperUrl(it)?.let { url -> bookmarkTapped(url, it.content.title) }
+ it.getUrl()?.let { url -> bookmarkTapped(url, it.content.title) }
}
}
is ToolbarMenu.Item.Bookmarks -> browserAnimator.captureEngineViewAndDrawStatically {
@@ -365,7 +373,15 @@ class DefaultBrowserToolbarMenuController(
BrowserFragmentDirections.actionGlobalHistoryFragment(),
)
}
-
+ is ToolbarMenu.Item.Passwords -> browserAnimator.captureEngineViewAndDrawStatically {
+ fragment.view?.let { view ->
+ bindBiometricsCredentialsPromptOrShowWarning(
+ view = view,
+ onShowPinVerification = onShowPinVerification,
+ onAuthSuccess = onBiometricAuthenticationSuccessful,
+ )
+ }
+ }
is ToolbarMenu.Item.Downloads -> browserAnimator.captureEngineViewAndDrawStatically {
navController.nav(
R.id.browserFragment,
@@ -411,25 +427,12 @@ class DefaultBrowserToolbarMenuController(
ToolbarMenu.Item.Translate -> {
Translations.action.record(Translations.ActionExtra("main_flow_browser"))
val directions =
- BrowserFragmentDirections.actionBrowserFragmentToTranslationsDialogFragment(
- sessionId = currentSession?.id,
- )
+ BrowserFragmentDirections.actionBrowserFragmentToTranslationsDialogFragment()
navController.navigateSafe(R.id.browserFragment, directions)
}
}
}
- private fun getProperUrl(currentSession: SessionState?): String? {
- return currentSession?.id?.let {
- val currentTab = browserStore.state.findTab(it)
- if (currentTab?.readerState?.active == true) {
- currentTab.readerState.activeUrl
- } else {
- currentSession.content.url
- }
- }
- }
-
@Suppress("ComplexMethod", "LongMethod")
private fun trackToolbarItemInteraction(item: ToolbarMenu.Item) {
when (item) {
@@ -494,6 +497,8 @@ class DefaultBrowserToolbarMenuController(
Events.browserMenuAction.record(Events.BrowserMenuActionExtra("bookmarks"))
is ToolbarMenu.Item.History ->
Events.browserMenuAction.record(Events.BrowserMenuActionExtra("history"))
+ is ToolbarMenu.Item.Passwords ->
+ Events.browserMenuAction.record(Events.BrowserMenuActionExtra("passwords"))
is ToolbarMenu.Item.Downloads ->
Events.browserMenuAction.record(Events.BrowserMenuActionExtra("downloads"))
is ToolbarMenu.Item.NewTab ->
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarView.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarView.kt
index 2c93538953..199bfb3bcc 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarView.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarView.kt
@@ -6,6 +6,7 @@ package org.mozilla.fenix.components.toolbar
import android.content.Context
import android.graphics.Color
+import android.net.Uri
import android.view.HapticFeedbackConstants
import android.view.LayoutInflater
import android.view.View
@@ -29,6 +30,7 @@ import mozilla.components.concept.toolbar.ScrollableToolbar
import mozilla.components.support.ktx.util.URLStringUtils
import mozilla.components.ui.widgets.behavior.EngineViewScrollingBehavior
import org.mozilla.fenix.R
+import org.mozilla.fenix.browser.tabstrip.isTabStripEnabled
import org.mozilla.fenix.components.toolbar.interactor.BrowserToolbarInteractor
import org.mozilla.fenix.customtabs.CustomTabToolbarIntegration
import org.mozilla.fenix.customtabs.CustomTabToolbarMenu
@@ -43,7 +45,7 @@ import mozilla.components.ui.widgets.behavior.ViewPosition as MozacToolbarPositi
@SuppressWarnings("LargeClass", "LongParameterList")
class BrowserToolbarView(
- context: Context,
+ private val context: Context,
container: ViewGroup,
private val settings: Settings,
private val interactor: BrowserToolbarInteractor,
@@ -70,6 +72,8 @@ class BrowserToolbarView(
private val tabStripView: ComposeView by lazy { layout.findViewById(R.id.tabStripView) }
+ private val isNavBarEnabled = IncompleteRedesignToolbarFeature(context.settings()).isEnabled
+
val toolbarIntegration: ToolbarIntegration
val menuToolbar: ToolbarMenu
@@ -101,9 +105,11 @@ class BrowserToolbarView(
true
}
+ view.isNavBarEnabled = isNavBarEnabled
+
with(context) {
val isPinningSupported = components.useCases.webAppUseCases.isPinningSupported()
- val searchUrlBackground = if (IncompleteRedesignToolbarFeature(context.settings()).isEnabled) {
+ val searchUrlBackground = if (isNavBarEnabled) {
R.drawable.search_url_background
} else {
R.drawable.search_old_url_background
@@ -150,7 +156,13 @@ class BrowserToolbarView(
ThemeManager.resolveAttribute(R.attr.borderToolbarDivider, context),
)
- display.urlFormatter = { url -> URLStringUtils.toDisplayUrl(url) }
+ display.urlFormatter = { url ->
+ if (isNavBarEnabled) {
+ Uri.parse(url.toString()).host ?: url
+ } else {
+ URLStringUtils.toDisplayUrl(url)
+ }
+ }
display.colors = display.colors.copy(
text = primaryTextColor,
@@ -211,8 +223,6 @@ class BrowserToolbarView(
isPrivate = customTabSession.content.private,
)
} else {
- val isNavBarEnabled = IncompleteRedesignToolbarFeature(context.settings()).isEnabled
-
DefaultToolbarIntegration(
this,
view,
@@ -322,5 +332,5 @@ class BrowserToolbarView(
}
private fun shouldShowTabStrip() =
- customTabSession == null && settings.isTabletAndTabStripEnabled
+ customTabSession == null && context.isTabStripEnabled()
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt
index 6e28294734..0af1430417 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt
@@ -232,6 +232,14 @@ open class DefaultToolbarMenu(
onItemTapped.invoke(ToolbarMenu.Item.Downloads)
}
+ private val passwordsItem = BrowserMenuImageText(
+ context.getString(R.string.preferences_sync_logins_2),
+ R.drawable.mozac_ic_login_24,
+ primaryTextColor(),
+ ) {
+ onItemTapped.invoke(ToolbarMenu.Item.Passwords)
+ }
+
private val extensionsItem = WebExtensionPlaceholderMenuItem(
id = WebExtensionPlaceholderMenuItem.MAIN_EXTENSIONS_MENU_ID,
)
@@ -409,6 +417,7 @@ open class DefaultToolbarMenu(
bookmarksItem,
historyItem,
downloadsItem,
+ passwordsItem,
extensionsItem,
syncMenuItem(),
BrowserMenuDivider(),
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarMenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarMenu.kt
index 179d30db5c..ebffb04909 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarMenu.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarMenu.kt
@@ -48,6 +48,11 @@ interface ToolbarMenu {
object CustomizeReaderView : Item()
object Bookmarks : Item()
object History : Item()
+
+ /**
+ * The Passwords menu item
+ */
+ object Passwords : Item()
object Downloads : Item()
object NewTab : Item()
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/DismissibleItemBackground.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/DismissibleItemBackground.kt
index a4ad6da918..98448f626b 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/DismissibleItemBackground.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/DismissibleItemBackground.kt
@@ -59,7 +59,7 @@ fun DismissibleItemBackground(
Alignment.CenterStart
},
),
- tint = FirefoxTheme.colors.iconWarning,
+ tint = FirefoxTheme.colors.iconCritical,
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/Button.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/Button.kt
index 2cc4421ac7..ad65c37d17 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/Button.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/Button.kt
@@ -232,7 +232,7 @@ fun DestructiveButton(
text: String,
modifier: Modifier = Modifier.fillMaxWidth(),
enabled: Boolean = true,
- textColor: Color = FirefoxTheme.colors.textWarningButton,
+ textColor: Color = FirefoxTheme.colors.textCriticalButton,
backgroundColor: Color = FirefoxTheme.colors.actionSecondary,
icon: Painter? = null,
iconModifier: Modifier = Modifier,
@@ -246,7 +246,7 @@ fun DestructiveButton(
enabled = enabled,
icon = icon,
iconModifier = iconModifier,
- tint = FirefoxTheme.colors.iconWarningButton,
+ tint = FirefoxTheme.colors.iconCriticalButton,
onClick = onClick,
)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/TextButton.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/TextButton.kt
index 018b6722ba..0d09bc6a22 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/TextButton.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/button/TextButton.kt
@@ -5,7 +5,7 @@
package org.mozilla.fenix.compose.button
import androidx.compose.foundation.background
-import androidx.compose.foundation.layout.Box
+import androidx.compose.foundation.layout.Column
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
@@ -20,6 +20,8 @@ import java.util.Locale
* @param text The button text to be displayed.
* @param onClick Invoked when the user clicks on the button.
* @param modifier [Modifier] Used to shape and position the underlying [androidx.compose.material.TextButton].
+ * @param enabled Controls the enabled state of the button. When `false`, this button will not
+ * be clickable.
* @param textColor [Color] to apply to the button text.
* @param upperCaseText If the button text should be in uppercase letters.
*/
@@ -28,12 +30,14 @@ fun TextButton(
text: String,
onClick: () -> Unit,
modifier: Modifier = Modifier,
+ enabled: Boolean = true,
textColor: Color = FirefoxTheme.colors.textAccent,
upperCaseText: Boolean = true,
) {
androidx.compose.material.TextButton(
onClick = onClick,
modifier = modifier,
+ enabled = enabled,
) {
Text(
text = if (upperCaseText) {
@@ -41,7 +45,7 @@ fun TextButton(
} else {
text
},
- color = textColor,
+ color = if (enabled) textColor else FirefoxTheme.colors.textDisabled,
style = FirefoxTheme.typography.button,
maxLines = 1,
)
@@ -52,11 +56,17 @@ fun TextButton(
@LightDarkPreview
private fun TextButtonPreview() {
FirefoxTheme {
- Box(Modifier.background(FirefoxTheme.colors.layer1)) {
+ Column(Modifier.background(FirefoxTheme.colors.layer1)) {
TextButton(
text = "label",
onClick = {},
)
+
+ TextButton(
+ text = "disabled",
+ onClick = {},
+ enabled = false,
+ )
}
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/list/ListItem.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/list/ListItem.kt
index 0a8e88b1ea..48c6e903b2 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/list/ListItem.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/list/ListItem.kt
@@ -23,6 +23,7 @@ import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.semantics.Role
@@ -36,6 +37,7 @@ import org.mozilla.fenix.R
import org.mozilla.fenix.compose.Favicon
import org.mozilla.fenix.compose.annotation.LightDarkPreview
import org.mozilla.fenix.compose.button.RadioButton
+import org.mozilla.fenix.compose.button.TextButton
import org.mozilla.fenix.theme.FirefoxTheme
private val LIST_ITEM_HEIGHT = 56.dp
@@ -43,8 +45,8 @@ private val LIST_ITEM_HEIGHT = 56.dp
private val ICON_SIZE = 24.dp
/**
- * List item used to display a label with an optional description text and
- * an optional [IconButton] at the end.
+ * List item used to display a label with an optional description text and an optional
+ * [IconButton] or [Icon] at the end.
*
* @param label The label in the list item.
* @param modifier [Modifier] to be applied to the layout.
@@ -52,9 +54,11 @@ private val ICON_SIZE = 24.dp
* @param description An optional description text below the label.
* @param maxDescriptionLines An optional maximum number of lines for the description text to span.
* @param onClick Called when the user clicks on the item.
- * @param iconPainter [Painter] used to display an [IconButton] after the list item.
+ * @param iconPainter [Painter] used to display an icon after the list item.
* @param iconDescription Content description of the icon.
- * @param onIconClick Called when the user clicks on the icon.
+ * @param iconTint Tint applied to [iconPainter].
+ * @param onIconClick Called when the user clicks on the icon. An [IconButton] will be
+ * displayed if this is provided. Otherwise, an [Icon] will be displayed.
*/
@Composable
fun TextListItem(
@@ -66,6 +70,7 @@ fun TextListItem(
onClick: (() -> Unit)? = null,
iconPainter: Painter? = null,
iconDescription: String? = null,
+ iconTint: Color = FirefoxTheme.colors.iconPrimary,
onIconClick: (() -> Unit)? = null,
) {
ListItem(
@@ -87,9 +92,16 @@ fun TextListItem(
Icon(
painter = iconPainter,
contentDescription = iconDescription,
- tint = FirefoxTheme.colors.iconPrimary,
+ tint = iconTint,
)
}
+ } else if (iconPainter != null) {
+ Icon(
+ painter = iconPainter,
+ contentDescription = iconDescription,
+ modifier = Modifier.padding(end = 16.dp),
+ tint = iconTint,
+ )
}
}
}
@@ -160,54 +172,135 @@ fun FaviconListItem(
/**
* List item used to display a label and an icon at the beginning with an optional description
- * text and an optional [IconButton] at the end.
+ * text and an optional [IconButton] or [Icon] at the end.
*
* @param label The label in the list item.
+ * @param labelTextColor [Color] to be applied to the label.
* @param description An optional description text below the label.
+ * @param enabled Controls the enabled state of the list item. When `false`, the list item will not
+ * be clickable.
* @param onClick Called when the user clicks on the item.
* @param beforeIconPainter [Painter] used to display an [Icon] before the list item.
* @param beforeIconDescription Content description of the icon.
- * @param afterIconPainter [Painter] used to display an [IconButton] after the list item.
+ * @param beforeIconTint Tint applied to [beforeIconPainter].
+ * @param afterIconPainter [Painter] used to display an icon after the list item.
* @param afterIconDescription Content description of the icon.
- * @param onAfterIconClick Called when the user clicks on the icon.
+ * @param afterIconTint Tint applied to [afterIconPainter].
+ * @param onAfterIconClick Called when the user clicks on the icon. An [IconButton] will be
+ * displayed if this is provided. Otherwise, an [Icon] will be displayed.
*/
@Composable
fun IconListItem(
label: String,
+ labelTextColor: Color = FirefoxTheme.colors.textPrimary,
description: String? = null,
+ enabled: Boolean = true,
onClick: (() -> Unit)? = null,
beforeIconPainter: Painter,
beforeIconDescription: String? = null,
+ beforeIconTint: Color = FirefoxTheme.colors.iconPrimary,
afterIconPainter: Painter? = null,
afterIconDescription: String? = null,
+ afterIconTint: Color = FirefoxTheme.colors.iconPrimary,
onAfterIconClick: (() -> Unit)? = null,
) {
ListItem(
label = label,
+ labelTextColor = labelTextColor,
description = description,
+ enabled = enabled,
onClick = onClick,
beforeListAction = {
Icon(
painter = beforeIconPainter,
contentDescription = beforeIconDescription,
modifier = Modifier.padding(horizontal = 16.dp),
- tint = FirefoxTheme.colors.iconPrimary,
+ tint = if (enabled) beforeIconTint else FirefoxTheme.colors.iconDisabled,
)
},
afterListAction = {
+ val tint = if (enabled) afterIconTint else FirefoxTheme.colors.iconDisabled
+
if (afterIconPainter != null && onAfterIconClick != null) {
IconButton(
onClick = onAfterIconClick,
modifier = Modifier
.padding(end = 16.dp)
.size(ICON_SIZE),
+ enabled = enabled,
) {
Icon(
painter = afterIconPainter,
contentDescription = afterIconDescription,
- tint = FirefoxTheme.colors.iconPrimary,
+ tint = tint,
)
}
+ } else if (afterIconPainter != null) {
+ Icon(
+ painter = afterIconPainter,
+ contentDescription = afterIconDescription,
+ modifier = Modifier.padding(end = 16.dp),
+ tint = tint,
+ )
+ }
+ },
+ )
+}
+
+/**
+ * List item used to display a label and an icon at the beginning with an optional description
+ * text and an optional [TextButton] at the end.
+ *
+ * @param label The label in the list item.
+ * @param labelTextColor [Color] to be applied to the label.
+ * @param description An optional description text below the label.
+ * @param enabled Controls the enabled state of the list item. When `false`, the list item will not
+ * be clickable.
+ * @param onClick Called when the user clicks on the item.
+ * @param beforeIconPainter [Painter] used to display an [Icon] before the list item.
+ * @param beforeIconDescription Content description of the icon.
+ * @param beforeIconTint Tint applied to [beforeIconPainter].
+ * @param afterButtonText The button text to be displayed after the list item.
+ * @param afterButtonTextColor [Color] to apply to [afterButtonText].
+ * @param onAfterButtonClick Called when the user clicks on the text button.
+ */
+@Composable
+fun IconListItem(
+ label: String,
+ labelTextColor: Color = FirefoxTheme.colors.textPrimary,
+ description: String? = null,
+ enabled: Boolean = true,
+ onClick: (() -> Unit)? = null,
+ beforeIconPainter: Painter,
+ beforeIconDescription: String? = null,
+ beforeIconTint: Color = FirefoxTheme.colors.iconPrimary,
+ afterButtonText: String? = null,
+ afterButtonTextColor: Color = FirefoxTheme.colors.actionPrimary,
+ onAfterButtonClick: (() -> Unit)? = null,
+) {
+ ListItem(
+ label = label,
+ labelTextColor = labelTextColor,
+ description = description,
+ enabled = enabled,
+ onClick = onClick,
+ beforeListAction = {
+ Icon(
+ painter = beforeIconPainter,
+ contentDescription = beforeIconDescription,
+ modifier = Modifier.padding(horizontal = 16.dp),
+ tint = if (enabled) beforeIconTint else FirefoxTheme.colors.iconDisabled,
+ )
+ },
+ afterListAction = {
+ if (afterButtonText != null && onAfterButtonClick != null) {
+ TextButton(
+ text = afterButtonText,
+ onClick = onAfterButtonClick,
+ enabled = enabled,
+ textColor = afterButtonTextColor,
+ upperCaseText = false,
+ )
}
},
)
@@ -270,9 +363,12 @@ fun RadioButtonListItem(
*
* @param label The label in the list item.
* @param modifier [Modifier] to be applied to the layout.
+ * @param labelTextColor [Color] to be applied to the label.
* @param maxLabelLines An optional maximum number of lines for the label text to span.
* @param description An optional description text below the label.
* @param maxDescriptionLines An optional maximum number of lines for the description text to span.
+ * @param enabled Controls the enabled state of the list item. When `false`, the list item will not
+ * be clickable.
* @param onClick Called when the user clicks on the item.
* @param beforeListAction Optional Composable for adding UI before the list item.
* @param afterListAction Optional Composable for adding UI to the end of the list item.
@@ -281,16 +377,18 @@ fun RadioButtonListItem(
private fun ListItem(
label: String,
modifier: Modifier = Modifier,
+ labelTextColor: Color = FirefoxTheme.colors.textPrimary,
maxLabelLines: Int = 1,
description: String? = null,
maxDescriptionLines: Int = 1,
+ enabled: Boolean = true,
onClick: (() -> Unit)? = null,
beforeListAction: @Composable RowScope.() -> Unit = {},
afterListAction: @Composable RowScope.() -> Unit = {},
) {
Row(
modifier = when (onClick != null) {
- true -> Modifier.clickable { onClick() }
+ true -> Modifier.clickable(enabled = enabled) { onClick() }
false -> Modifier
}.then(
Modifier.defaultMinSize(minHeight = LIST_ITEM_HEIGHT),
@@ -306,7 +404,7 @@ private fun ListItem(
) {
Text(
text = label,
- color = FirefoxTheme.colors.textPrimary,
+ color = if (enabled) labelTextColor else FirefoxTheme.colors.textDisabled,
style = FirefoxTheme.typography.subtitle1,
maxLines = maxLabelLines,
)
@@ -314,7 +412,7 @@ private fun ListItem(
description?.let {
Text(
text = description,
- color = FirefoxTheme.colors.textSecondary,
+ color = if (enabled) FirefoxTheme.colors.textSecondary else FirefoxTheme.colors.textDisabled,
style = FirefoxTheme.typography.body2,
maxLines = maxDescriptionLines,
)
@@ -352,13 +450,21 @@ private fun TextListItemWithDescriptionPreview() {
@Preview(name = "TextListItem with a right icon", uiMode = Configuration.UI_MODE_NIGHT_YES)
private fun TextListItemWithIconPreview() {
FirefoxTheme {
- Box(Modifier.background(FirefoxTheme.colors.layer1)) {
+ Column(Modifier.background(FirefoxTheme.colors.layer1)) {
TextListItem(
- label = "Label + right icon",
- iconPainter = painterResource(R.drawable.ic_menu),
+ label = "Label + right icon button",
+ onClick = {},
+ iconPainter = painterResource(R.drawable.mozac_ic_folder_24),
iconDescription = "click me",
onIconClick = { println("icon click") },
)
+
+ TextListItem(
+ label = "Label + right icon",
+ onClick = {},
+ iconPainter = painterResource(R.drawable.mozac_ic_folder_24),
+ iconDescription = "click me",
+ )
}
}
}
@@ -367,11 +473,40 @@ private fun TextListItemWithIconPreview() {
@Preview(name = "IconListItem", uiMode = Configuration.UI_MODE_NIGHT_YES)
private fun IconListItemPreview() {
FirefoxTheme {
- Box(Modifier.background(FirefoxTheme.colors.layer1)) {
+ Column(Modifier.background(FirefoxTheme.colors.layer1)) {
+ IconListItem(
+ label = "Left icon list item",
+ onClick = {},
+ beforeIconPainter = painterResource(R.drawable.mozac_ic_folder_24),
+ beforeIconDescription = "click me",
+ )
+
IconListItem(
label = "Left icon list item",
- beforeIconPainter = painterResource(R.drawable.ic_folder_icon),
+ labelTextColor = FirefoxTheme.colors.textAccent,
+ onClick = {},
+ beforeIconPainter = painterResource(R.drawable.mozac_ic_folder_24),
+ beforeIconDescription = "click me",
+ beforeIconTint = FirefoxTheme.colors.iconAccentViolet,
+ )
+
+ IconListItem(
+ label = "Left icon list item + right icon",
+ onClick = {},
+ beforeIconPainter = painterResource(R.drawable.mozac_ic_folder_24),
beforeIconDescription = "click me",
+ afterIconPainter = painterResource(R.drawable.mozac_ic_chevron_right_24),
+ afterIconDescription = null,
+ )
+
+ IconListItem(
+ label = "Left icon list item + right icon (disabled)",
+ enabled = false,
+ onClick = {},
+ beforeIconPainter = painterResource(R.drawable.mozac_ic_folder_24),
+ beforeIconDescription = "click me",
+ afterIconPainter = painterResource(R.drawable.mozac_ic_chevron_right_24),
+ afterIconDescription = null,
)
}
}
@@ -379,20 +514,29 @@ private fun IconListItemPreview() {
@Composable
@Preview(
- name = "IconListItem with an interactable right icon",
+ name = "IconListItem with after list action",
uiMode = Configuration.UI_MODE_NIGHT_YES,
)
-private fun IconListItemWithRightIconPreview() {
+private fun IconListItemWithAfterListActionPreview() {
FirefoxTheme {
- Box(Modifier.background(FirefoxTheme.colors.layer1)) {
+ Column(Modifier.background(FirefoxTheme.colors.layer1)) {
IconListItem(
- label = "Left icon list item + right icon",
- beforeIconPainter = painterResource(R.drawable.ic_folder_icon),
+ label = "IconListItem + right icon + clicks",
+ beforeIconPainter = painterResource(R.drawable.mozac_ic_folder_24),
beforeIconDescription = null,
- afterIconPainter = painterResource(R.drawable.ic_menu),
+ afterIconPainter = painterResource(R.drawable.mozac_ic_ellipsis_vertical_24),
afterIconDescription = "click me",
onAfterIconClick = { println("icon click") },
)
+
+ IconListItem(
+ label = "IconListItem + text button",
+ onClick = { println("list item click") },
+ beforeIconPainter = painterResource(R.drawable.mozac_ic_folder_24),
+ beforeIconDescription = "click me",
+ afterButtonText = "Edit",
+ onAfterButtonClick = { println("text button click") },
+ )
}
}
}
@@ -410,14 +554,14 @@ private fun FaviconListItemPreview() {
description = "Description text",
onClick = { println("list item click") },
url = "",
- iconPainter = painterResource(R.drawable.ic_menu),
+ iconPainter = painterResource(R.drawable.mozac_ic_ellipsis_vertical_24),
onIconClick = { println("icon click") },
)
FaviconListItem(
label = "Favicon + painter",
description = "Description text",
- faviconPainter = painterResource(id = R.drawable.ic_tab_collection),
+ faviconPainter = painterResource(id = R.drawable.mozac_ic_collection_24),
onClick = { println("list item click") },
url = "",
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/tabstray/DismissedTabBackground.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/tabstray/DismissedTabBackground.kt
index 802457d4f8..3b40e3278a 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/tabstray/DismissedTabBackground.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/compose/tabstray/DismissedTabBackground.kt
@@ -60,7 +60,7 @@ fun DismissedTabBackground(
.alpha(
if (dismissDirection == DismissDirection.StartToEnd || dismissDirection == null) 1f else 0f,
),
- tint = FirefoxTheme.colors.iconWarning,
+ tint = FirefoxTheme.colors.iconCritical,
)
Icon(
@@ -72,7 +72,7 @@ fun DismissedTabBackground(
.alpha(
if (dismissDirection == DismissDirection.EndToStart || dismissDirection == null) 1f else 0f,
),
- tint = FirefoxTheme.colors.iconWarning,
+ tint = FirefoxTheme.colors.iconCritical,
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt
index 0f1fff66bd..6c3abb3b0c 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt
@@ -34,6 +34,7 @@ import org.mozilla.fenix.R
import org.mozilla.fenix.browser.BaseBrowserFragment
import org.mozilla.fenix.browser.CustomTabContextMenuCandidate
import org.mozilla.fenix.browser.FenixSnackbarDelegate
+import org.mozilla.fenix.components.menu.MenuAccessPoint
import org.mozilla.fenix.components.toolbar.IncompleteRedesignToolbarFeature
import org.mozilla.fenix.components.toolbar.ToolbarMenu
import org.mozilla.fenix.components.toolbar.ToolbarPosition
@@ -130,8 +131,9 @@ class ExternalAppBrowserFragment : BaseBrowserFragment() {
onMenuButtonClick = {
nav(
R.id.externalAppBrowserFragment,
- ExternalAppBrowserFragmentDirections
- .actionGlobalMenuDialogFragment(),
+ ExternalAppBrowserFragmentDirections.actionGlobalMenuDialogFragment(
+ accesspoint = MenuAccessPoint.External,
+ ),
)
},
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/tabs/TabTools.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/tabs/TabTools.kt
index 5fa97b7c03..54ca60feaf 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/tabs/TabTools.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/tabs/TabTools.kt
@@ -14,8 +14,10 @@ import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.text.KeyboardActions
import androidx.compose.foundation.text.KeyboardOptions
+import androidx.compose.foundation.verticalScroll
import androidx.compose.material.Text
import androidx.compose.material.TextField
import androidx.compose.material.TextFieldDefaults
@@ -116,7 +118,8 @@ private fun TabToolsContent(
Column(
modifier = Modifier
.fillMaxSize()
- .padding(all = 16.dp),
+ .padding(all = 16.dp)
+ .verticalScroll(rememberScrollState()),
verticalArrangement = Arrangement.spacedBy(16.dp),
) {
TabCounter(
@@ -152,7 +155,7 @@ private fun TabCounter(
Spacer(modifier = Modifier.height(16.dp))
TabCountRow(
- tabType = stringResource(R.string.debug_drawer_tab_tools_tab_count_normal),
+ tabType = stringResource(R.string.debug_drawer_tab_tools_tab_count_active),
count = activeTabCount,
)
@@ -254,10 +257,10 @@ private fun TabCreationTool(
textColor = FirefoxTheme.colors.textPrimary,
backgroundColor = Color.Transparent,
cursorColor = FirefoxTheme.colors.borderFormDefault,
- errorCursorColor = FirefoxTheme.colors.borderWarning,
+ errorCursorColor = FirefoxTheme.colors.borderCritical,
focusedIndicatorColor = FirefoxTheme.colors.borderPrimary,
unfocusedIndicatorColor = FirefoxTheme.colors.borderPrimary,
- errorIndicatorColor = FirefoxTheme.colors.borderWarning,
+ errorIndicatorColor = FirefoxTheme.colors.borderCritical,
),
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/ui/DebugOverlay.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/ui/DebugOverlay.kt
index fa1959cd79..92e41355c0 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/ui/DebugOverlay.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/debugsettings/ui/DebugOverlay.kt
@@ -26,6 +26,7 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalLayoutDirection
import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import androidx.navigation.NavHostController
@@ -88,6 +89,7 @@ fun DebugOverlay(
onClick = {
onDrawerOpen()
},
+ contentDescription = stringResource(R.string.debug_drawer_fab_content_description),
)
// ModalDrawer utilizes a Surface, which blocks ALL clicks behind it, preventing the app
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/downloads/StartDownloadDialog.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/downloads/StartDownloadDialog.kt
index 6ed2c57fb5..96d07d5276 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/downloads/StartDownloadDialog.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/downloads/StartDownloadDialog.kt
@@ -17,7 +17,6 @@ import android.view.accessibility.AccessibilityEvent
import android.view.accessibility.AccessibilityNodeInfo
import androidx.annotation.VisibleForTesting
import androidx.coordinatorlayout.widget.CoordinatorLayout
-import androidx.core.view.ViewCompat
import androidx.core.view.children
import androidx.viewbinding.ViewBinding
import mozilla.components.concept.base.crash.Breadcrumb
@@ -124,10 +123,7 @@ abstract class StartDownloadDialog(
parent?.children
?.filterNot { it.id == R.id.startDownloadDialogContainer }
?.forEach {
- ViewCompat.setImportantForAccessibility(
- it,
- ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_YES,
- )
+ it.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_YES)
}
}
@@ -136,10 +132,7 @@ abstract class StartDownloadDialog(
parent?.children
?.filterNot { it.id == R.id.startDownloadDialogContainer }
?.forEach {
- ViewCompat.setImportantForAccessibility(
- it,
- ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS,
- )
+ it.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt
index bb927596a4..d0423728d4 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt
@@ -146,6 +146,27 @@ fun Activity.openSetDefaultBrowserOption(
}
}
+/**
+ * Checks if the app can prompt the user to set it as the default browser.
+ *
+ * From Android 10, a new method to prompt the user to set default apps has been introduced.
+ * This method checks if the app can prompt the user to set it as the default browser
+ * based on the Android version and the availability of the ROLE_BROWSER.
+ */
+fun Activity.isDefaultBrowserPromptSupported(): Boolean {
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
+ getSystemService(RoleManager::class.java).also {
+ if (it.isRoleAvailable(RoleManager.ROLE_BROWSER) && !it.isRoleHeld(
+ RoleManager.ROLE_BROWSER,
+ )
+ ) {
+ return true
+ }
+ }
+ }
+ return false
+}
+
@RequiresApi(Build.VERSION_CODES.N)
private fun Activity.navigateToDefaultBrowserAppsSettings(
from: BrowserDirection,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/AppState.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/AppState.kt
index d0491be7f0..db191ed0d1 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/AppState.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/AppState.kt
@@ -170,7 +170,7 @@ internal fun getFilteredSponsoredStories(
fun AppState.filterState(blocklistHandler: BlocklistHandler): AppState =
with(blocklistHandler) {
copy(
- recentBookmarks = recentBookmarks.filteredByBlocklist(),
+ bookmarks = bookmarks.filteredByBlocklist(),
recentTabs = recentTabs.filteredByBlocklist().filterContile(),
recentHistory = recentHistory.filteredByBlocklist().filterContile(),
recentSyncedTabState = recentSyncedTabState.filteredByBlocklist().filterContile(),
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Bitmap.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Bitmap.kt
index 02f63839f6..5e02e68873 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Bitmap.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Bitmap.kt
@@ -8,6 +8,7 @@ import android.graphics.Bitmap
import android.graphics.Matrix
import android.view.View
import android.widget.ImageView
+import androidx.annotation.VisibleForTesting
/**
* This will scale the received [Bitmap] to the size of the [view]. It retains the bitmap's
@@ -33,8 +34,8 @@ fun Bitmap.scaleToBottomOfView(view: ImageView) {
oldRight: Int,
oldBottom: Int,
) {
- val viewWidth: Float = view.width.toFloat()
- val viewHeight: Float = view.height.toFloat()
+ val viewWidth = view.width.toFloat()
+ val viewHeight = view.safeHeight().toFloat()
val bitmapWidth = bitmap.width
val bitmapHeight = bitmap.height
val widthScale = viewWidth / bitmapWidth
@@ -52,3 +53,16 @@ fun Bitmap.scaleToBottomOfView(view: ImageView) {
},
)
}
+
+/**
+ * If the keyboard is open we must factor in the height for the correct view height.
+ */
+@VisibleForTesting
+internal fun View.safeHeight(): Int {
+ val keyboardHeight = getKeyboardHeight()
+ return if (keyboardHeight > 0) {
+ keyboardHeight.plus(height)
+ } else {
+ height
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Context.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Context.kt
index 11f37595d8..a4432ba37a 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Context.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Context.kt
@@ -145,3 +145,9 @@ fun Context.tabClosedUndoMessage(private: Boolean): String =
} else {
getString(R.string.snackbar_tab_closed)
}
+
+/**
+ * Returns true if the device is a tablet
+ */
+fun Context.isTablet(): Boolean =
+ resources.getBoolean(R.bool.tablet)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Fragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Fragment.kt
index 0bbc0ee729..db7f36cc40 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Fragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Fragment.kt
@@ -6,6 +6,8 @@ package org.mozilla.fenix.ext
import android.app.Activity
import android.content.Intent
+import android.view.View
+import android.view.ViewGroup
import android.view.WindowManager
import androidx.activity.result.ActivityResult
import androidx.activity.result.ActivityResultLauncher
@@ -18,9 +20,12 @@ import androidx.navigation.NavDirections
import androidx.navigation.NavOptions
import androidx.navigation.fragment.findNavController
import mozilla.components.concept.base.crash.Breadcrumb
+import mozilla.components.support.utils.ext.isLandscape
import org.mozilla.fenix.NavHostActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.components.Components
+import org.mozilla.fenix.components.toolbar.ToolbarPosition
+import org.mozilla.fenix.components.toolbar.navbar.ToolbarContainerView
/**
* Get the requireComponents of this application.
@@ -149,3 +154,53 @@ fun Fragment.registerForActivityResult(
}
}
}
+
+/**
+ * Checks whether the current fragment is running on a tablet.
+ */
+fun Fragment.isTablet(): Boolean {
+ return resources.getBoolean(R.bool.tablet)
+}
+
+/**
+ *
+ * Manages the state of the NavBar upon an orientation change.
+ *
+ * @param parent The top level [ViewGroup] of the fragment, which will be hosting toolbar/navbar container.
+ * @param toolbarView [View] responsible for showing the AddressBar.
+ * @param bottomToolbarContainerView The [ToolbarContainerView] hosting the NavBar.
+ * @param reinitializeNavBar lambda for re-initializing the NavBar inside the host [Fragment].
+ */
+fun Fragment.updateNavBarForConfigurationChange(
+ parent: ViewGroup,
+ toolbarView: View,
+ bottomToolbarContainerView: ToolbarContainerView?,
+ reinitializeNavBar: () -> Unit,
+) {
+ if (requireContext().isLandscape()) {
+ // In landscape mode we want to remove the navigation bar.
+ parent.removeView(bottomToolbarContainerView)
+
+ // If address bar was positioned at bottom and we have removed the toolbar container, we are adding address bar
+ // back.
+ val isToolbarAtBottom = requireComponents.settings.toolbarPosition == ToolbarPosition.BOTTOM
+
+ // Toolbar already having a parent is an edge case, but it could happen if configurationChange is called after
+ // onCreateView with the same orientation. Caught it on a foldable emulator while going from single screen
+ // portrait mode to landscape table, back and forth.
+ val hasParent = toolbarView.parent != null
+ if (isToolbarAtBottom && !hasParent) {
+ parent.addView(toolbarView)
+ }
+ } else {
+ // Already having a bottomContainer after switching back to portrait mode will happen when address bar is
+ // positioned at bottom and also as an edge case if configurationChange is called after onCreateView with the
+ // same orientation. Caught it on a foldable emulator while going from single screen portrait mode to landscape
+ // table, back and forth.
+ bottomToolbarContainerView?.let {
+ parent.removeView(it)
+ }
+
+ reinitializeNavBar()
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/View.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/View.kt
index 3c5976e428..9f2d2e0035 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/View.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/View.kt
@@ -2,18 +2,16 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-@file:Suppress("TooManyFunctions")
-
package org.mozilla.fenix.ext
import android.graphics.Rect
import android.os.Build
import android.view.TouchDelegate
import android.view.View
-import android.view.accessibility.AccessibilityNodeInfo
import androidx.annotation.Dimension
import androidx.annotation.Dimension.Companion.DP
import androidx.annotation.VisibleForTesting
+import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import mozilla.components.support.ktx.android.util.dpToPx
import mozilla.components.support.utils.ext.bottom
@@ -55,97 +53,11 @@ fun View.removeTouchDelegate() {
}
/**
- * Sets the new a11y parent.
- */
-fun View.setNewAccessibilityParent(newParent: View) {
- this.accessibilityDelegate = object : View.AccessibilityDelegate() {
- override fun onInitializeAccessibilityNodeInfo(
- host: View,
- info: AccessibilityNodeInfo,
- ) {
- super.onInitializeAccessibilityNodeInfo(host, info)
- info.setParent(newParent)
- }
- }
-}
-
-/**
- * Updates the a11y collection item info for an item in a list.
- */
-fun View.updateAccessibilityCollectionItemInfo(
- rowIndex: Int,
- columnIndex: Int,
- isSelected: Boolean,
- rowSpan: Int = 1,
- columnSpan: Int = 1,
-) {
- this.accessibilityDelegate = object : View.AccessibilityDelegate() {
- override fun onInitializeAccessibilityNodeInfo(
- host: View,
- info: AccessibilityNodeInfo,
- ) {
- super.onInitializeAccessibilityNodeInfo(host, info)
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
- info.collectionItemInfo =
- AccessibilityNodeInfo.CollectionItemInfo(
- rowIndex,
- rowSpan,
- columnIndex,
- columnSpan,
- false,
- isSelected,
- )
- } else {
- @Suppress("DEPRECATION")
- AccessibilityNodeInfo.CollectionItemInfo.obtain(
- rowIndex,
- rowSpan,
- columnIndex,
- columnSpan,
- false,
- isSelected,
- )
- }
- }
- }
-}
-
-/**
- * Updates the a11y collection info for a list.
- */
-fun View.updateAccessibilityCollectionInfo(
- rowCount: Int,
- columnCount: Int,
-) {
- this.accessibilityDelegate = object : View.AccessibilityDelegate() {
- override fun onInitializeAccessibilityNodeInfo(
- host: View,
- info: AccessibilityNodeInfo,
- ) {
- super.onInitializeAccessibilityNodeInfo(host, info)
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
- info.collectionInfo = AccessibilityNodeInfo.CollectionInfo(
- rowCount,
- columnCount,
- false,
- )
- } else {
- @Suppress("DEPRECATION")
- info.collectionInfo = AccessibilityNodeInfo.CollectionInfo.obtain(
- rowCount,
- columnCount,
- false,
- )
- }
- }
- }
-}
-
-/**
* Fills a [Rect] with data about a view's location in the screen.
*
- * @see View.getLocationOnScreen
- * @see View.getRectWithViewLocation for a version of this that is relative to a window
+ * @see android.view.View.getLocationOnScreen
+ * @see mozilla.components.support.ktx.android.view.getRectWithViewLocation for a version of this
+ * that is relative to a window
*/
fun View.getRectWithScreenLocation(): Rect {
val locationOnScreen = IntArray(2).apply { getLocationOnScreen(this) }
@@ -196,8 +108,10 @@ internal fun View.getWindowVisibleDisplayFrame(): Rect = with(Rect()) {
this
}
-@VisibleForTesting
-internal fun View.getKeyboardHeight(): Int {
+/**
+ * Calculates the height of the onscreen keyboard.
+ */
+fun View.getKeyboardHeight(): Int {
val windowRect = getWindowVisibleDisplayFrame()
val statusBarHeight = windowRect.top
var keyboardHeight = rootView.height - (windowRect.height() + statusBarHeight)
@@ -207,10 +121,3 @@ internal fun View.getKeyboardHeight(): Int {
return keyboardHeight
}
-
-/**
- * The assumed minimum height of the keyboard.
- */
-@VisibleForTesting
-@Dimension(unit = DP)
-internal const val MINIMUM_KEYBOARD_HEIGHT = 100
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt
index b0837f80cc..b25a5dbc4a 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt
@@ -93,7 +93,10 @@ object GeckoProvider {
isCreditCardAutofillEnabled = { context.settings().shouldAutofillCreditCardDetails },
isAddressAutofillEnabled = { context.settings().shouldAutofillAddressDetails },
),
- GeckoLoginStorageDelegate(loginStorage),
+ GeckoLoginStorageDelegate(
+ loginStorage = loginStorage,
+ isLoginAutofillEnabled = { context.settings().shouldAutofillLogins },
+ ),
)
return geckoRuntime
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
index 75c837a62b..ac8de36e7b 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
@@ -5,6 +5,7 @@
package org.mozilla.fenix.home
import android.annotation.SuppressLint
+import android.content.Intent
import android.content.res.ColorStateList
import android.content.res.Configuration
import android.graphics.drawable.ColorDrawable
@@ -13,6 +14,7 @@ import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import androidx.activity.result.ActivityResultLauncher
import androidx.annotation.VisibleForTesting
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxWidth
@@ -80,10 +82,12 @@ import mozilla.components.lib.state.ext.consumeFlow
import mozilla.components.lib.state.ext.consumeFrom
import mozilla.components.service.glean.private.NoExtras
import mozilla.components.support.base.feature.ViewBoundFeatureWrapper
+import mozilla.components.support.utils.ext.isLandscape
import mozilla.components.ui.colors.PhotonColors
import org.mozilla.fenix.BrowserDirection
import org.mozilla.fenix.GleanMetrics.HomeScreen
import org.mozilla.fenix.GleanMetrics.Homepage
+import org.mozilla.fenix.GleanMetrics.Logins
import org.mozilla.fenix.GleanMetrics.NavigationBar
import org.mozilla.fenix.GleanMetrics.PrivateBrowsingShortcutCfr
import org.mozilla.fenix.HomeActivity
@@ -93,10 +97,12 @@ import org.mozilla.fenix.addons.showSnackBar
import org.mozilla.fenix.browser.BrowserAnimator
import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.browser.tabstrip.TabStrip
+import org.mozilla.fenix.browser.tabstrip.isTabStripEnabled
import org.mozilla.fenix.components.FenixSnackbar
import org.mozilla.fenix.components.PrivateShortcutCreateManager
import org.mozilla.fenix.components.TabCollectionStorage
import org.mozilla.fenix.components.appstate.AppAction
+import org.mozilla.fenix.components.menu.MenuAccessPoint
import org.mozilla.fenix.components.toolbar.IncompleteRedesignToolbarFeature
import org.mozilla.fenix.components.toolbar.ToolbarPosition
import org.mozilla.fenix.components.toolbar.navbar.BottomToolbarContainerView
@@ -107,16 +113,19 @@ import org.mozilla.fenix.databinding.FragmentHomeBinding
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.containsQueryParameters
import org.mozilla.fenix.ext.hideToolbar
+import org.mozilla.fenix.ext.isTablet
import org.mozilla.fenix.ext.nav
+import org.mozilla.fenix.ext.registerForActivityResult
import org.mozilla.fenix.ext.requireComponents
import org.mozilla.fenix.ext.scaleToBottomOfView
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.ext.tabClosedUndoMessage
+import org.mozilla.fenix.ext.updateNavBarForConfigurationChange
+import org.mozilla.fenix.home.bookmarks.BookmarksFeature
+import org.mozilla.fenix.home.bookmarks.controller.DefaultBookmarksController
import org.mozilla.fenix.home.pocket.DefaultPocketStoriesController
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesCategory
import org.mozilla.fenix.home.privatebrowsing.controller.DefaultPrivateBrowsingController
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmarksFeature
-import org.mozilla.fenix.home.recentbookmarks.controller.DefaultRecentBookmarksController
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTabFeature
import org.mozilla.fenix.home.recentsyncedtabs.controller.DefaultRecentSyncedTabController
import org.mozilla.fenix.home.recenttabs.RecentTabsListFeature
@@ -132,6 +141,7 @@ import org.mozilla.fenix.home.toolbar.SearchSelectorBinding
import org.mozilla.fenix.home.toolbar.SearchSelectorMenuBinding
import org.mozilla.fenix.home.topsites.DefaultTopSitesView
import org.mozilla.fenix.messaging.DefaultMessageController
+import org.mozilla.fenix.messaging.FenixMessageSurfaceId
import org.mozilla.fenix.messaging.MessagingFeature
import org.mozilla.fenix.nimbus.FxNimbus
import org.mozilla.fenix.perf.MarkersFragmentLifecycleCallbacks
@@ -233,12 +243,14 @@ class HomeFragment : Fragment() {
private val messagingFeature = ViewBoundFeatureWrapper<MessagingFeature>()
private val recentTabsListFeature = ViewBoundFeatureWrapper<RecentTabsListFeature>()
private val recentSyncedTabFeature = ViewBoundFeatureWrapper<RecentSyncedTabFeature>()
- private val recentBookmarksFeature = ViewBoundFeatureWrapper<RecentBookmarksFeature>()
+ private val bookmarksFeature = ViewBoundFeatureWrapper<BookmarksFeature>()
private val historyMetadataFeature = ViewBoundFeatureWrapper<RecentVisitsFeature>()
private val searchSelectorBinding = ViewBoundFeatureWrapper<SearchSelectorBinding>()
private val searchSelectorMenuBinding = ViewBoundFeatureWrapper<SearchSelectorMenuBinding>()
private val navbarIntegration = ViewBoundFeatureWrapper<NavbarIntegration>()
+ private lateinit var savedLoginsLauncher: ActivityResultLauncher<Intent>
+
override fun onCreate(savedInstanceState: Bundle?) {
// DO NOT ADD ANYTHING ABOVE THIS getProfilerTime CALL!
val profilerStartTime = requireComponents.core.engine.profiler?.getProfilerTime()
@@ -246,6 +258,7 @@ class HomeFragment : Fragment() {
super.onCreate(savedInstanceState)
bundleArgs = args.toBundle()
+ savedLoginsLauncher = registerForActivityResult { navigateToSavedLoginsFragment() }
// DO NOT MOVE ANYTHING BELOW THIS addMarker CALL!
requireComponents.core.engine.profiler?.addMarker(
@@ -301,6 +314,7 @@ class HomeFragment : Fragment() {
messagingFeature.set(
feature = MessagingFeature(
appStore = requireComponents.appStore,
+ surface = FenixMessageSurfaceId.HOMESCREEN,
),
owner = viewLifecycleOwner,
view = binding.root,
@@ -347,9 +361,9 @@ class HomeFragment : Fragment() {
)
}
- if (requireContext().settings().showRecentBookmarksFeature) {
- recentBookmarksFeature.set(
- feature = RecentBookmarksFeature(
+ if (requireContext().settings().showBookmarksHomeFeature) {
+ bookmarksFeature.set(
+ feature = BookmarksFeature(
appStore = components.appStore,
bookmarksUseCase = run {
requireContext().components.useCases.bookmarksUseCases
@@ -409,7 +423,7 @@ class HomeFragment : Fragment() {
accessPoint = TabsTrayAccessPoint.HomeRecentSyncedTab,
appStore = components.appStore,
),
- recentBookmarksController = DefaultRecentBookmarksController(
+ bookmarksController = DefaultBookmarksController(
activity = activity,
navController = findNavController(),
appStore = components.appStore,
@@ -451,7 +465,11 @@ class HomeFragment : Fragment() {
searchEngine = components.core.store.state.search.selectedOrDefaultSearchEngine,
)
- if (IncompleteRedesignToolbarFeature(requireContext().settings()).isEnabled) {
+ // We don't show the navigation bar for tablets and in landscape mode.
+ val shouldAddNavigationBar = IncompleteRedesignToolbarFeature(requireContext().settings()).isEnabled &&
+ !requireContext().isLandscape() &&
+ !isTablet()
+ if (shouldAddNavigationBar) {
initializeNavBar(activity = activity)
}
@@ -478,11 +496,27 @@ class HomeFragment : Fragment() {
return binding.root
}
+ private fun reinitializeNavBar() {
+ initializeNavBar(activity = requireActivity() as HomeActivity)
+ }
+
override fun onConfigurationChanged(newConfig: Configuration) {
super.onConfigurationChanged(newConfig)
homeMenuView?.dismissMenu()
+ // If the navbar feature could be visible, we should update it's state.
+ val shouldUpdateNavBarState =
+ IncompleteRedesignToolbarFeature(requireContext().settings()).isEnabled && !isTablet()
+ if (shouldUpdateNavBarState) {
+ updateNavBarForConfigurationChange(
+ parent = binding.homeLayout,
+ toolbarView = binding.toolbarLayout,
+ bottomToolbarContainerView = _bottomToolbarContainerView?.toolbarContainerView,
+ reinitializeNavBar = ::reinitializeNavBar,
+ )
+ }
+
val currentWallpaperName = requireContext().settings().currentWallpaperName
applyWallpaper(
wallpaperName = currentWallpaperName,
@@ -511,7 +545,10 @@ class HomeFragment : Fragment() {
lifecycleOwner = viewLifecycleOwner,
homeActivity = activity,
navController = findNavController(),
+ homeFragment = this,
menuButton = WeakReference(menuButton),
+ onShowPinVerification = { intent -> savedLoginsLauncher.launch(intent) },
+ onBiometricAuthenticationSuccessful = ::navigateToSavedLoginsFragment,
).also { it.build() }
_bottomToolbarContainerView = BottomToolbarContainerView(
@@ -559,7 +596,9 @@ class HomeFragment : Fragment() {
onMenuButtonClick = {
findNavController().nav(
findNavController().currentDestination?.id,
- HomeFragmentDirections.actionGlobalMenuDialogFragment(),
+ HomeFragmentDirections.actionGlobalMenuDialogFragment(
+ accesspoint = MenuAccessPoint.Home,
+ ),
)
},
)
@@ -682,7 +721,10 @@ class HomeFragment : Fragment() {
lifecycleOwner = viewLifecycleOwner,
homeActivity = activity as HomeActivity,
navController = findNavController(),
+ homeFragment = this,
menuButton = WeakReference(binding.menuButton),
+ onShowPinVerification = { intent -> savedLoginsLauncher.launch(intent) },
+ onBiometricAuthenticationSuccessful = { navigateToSavedLoginsFragment() },
).also { it.build() }
tabCounterView = TabCounterView(
@@ -693,7 +735,7 @@ class HomeFragment : Fragment() {
)
toolbarView?.build()
- if (requireContext().settings().isTabletAndTabStripEnabled) {
+ if (requireContext().isTabStripEnabled()) {
initTabStrip()
}
@@ -1224,6 +1266,18 @@ class HomeFragment : Fragment() {
}
}
+ /**
+ * Called when authentication succeeds.
+ */
+ private fun navigateToSavedLoginsFragment() {
+ val navController = findNavController()
+ if (navController.currentDestination?.id == R.id.homeFragment) {
+ Logins.openLogins.record(NoExtras())
+ val directions = HomeFragmentDirections.actionLoginsListFragment()
+ navController.navigate(directions)
+ }
+ }
+
companion object {
// Used to set homeViewModel.sessionToDelete when all tabs of a browsing mode are closed
const val ALL_NORMAL_TABS = "all_normal"
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt
index f2f7ef7522..93b9518b5a 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt
@@ -49,6 +49,11 @@ class HomeMenu(
object Bookmarks : Item()
object History : Item()
object Downloads : Item()
+
+ /**
+ * The Passwords menu item
+ */
+ object Passwords : Item()
object Extensions : Item()
data class SyncAccount(val accountState: AccountState) : Item()
@@ -142,6 +147,14 @@ class HomeMenu(
onItemTapped.invoke(Item.Downloads)
}
+ val passwordsItem = BrowserMenuImageText(
+ context.getString(R.string.preferences_sync_logins_2),
+ R.drawable.mozac_ic_login_24,
+ primaryTextColor,
+ ) {
+ onItemTapped.invoke(Item.Passwords)
+ }
+
val extensionsItem = BrowserMenuImageText(
context.getString(R.string.browser_menu_extensions),
R.drawable.ic_addons_extensions,
@@ -217,6 +230,7 @@ class HomeMenu(
bookmarksItem,
historyItem,
downloadsItem,
+ passwordsItem,
extensionsItem,
syncSignInMenuItem,
accountAuthItem,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenuView.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenuView.kt
index 7a94a7837a..611946a237 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenuView.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenuView.kt
@@ -5,6 +5,7 @@
package org.mozilla.fenix.home
import android.content.Context
+import android.content.Intent
import android.view.View
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting.Companion.PRIVATE
@@ -29,6 +30,7 @@ import org.mozilla.fenix.components.accounts.FenixFxAEntryPoint
import org.mozilla.fenix.ext.nav
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.settings.SupportUtils
+import org.mozilla.fenix.settings.biometric.bindBiometricsCredentialsPromptOrShowWarning
import org.mozilla.fenix.settings.deletebrowsingdata.deleteAndQuit
import org.mozilla.fenix.theme.ThemeManager
import org.mozilla.fenix.whatsnew.WhatsNew
@@ -43,18 +45,26 @@ import org.mozilla.fenix.GleanMetrics.HomeMenu as HomeMenuMetrics
* @param lifecycleOwner [LifecycleOwner] for the view.
* @param homeActivity [HomeActivity] used to open URLs in a new tab.
* @param navController [NavController] used for navigation.
+ * @param homeFragment [HomeFragment] used to attach the biometric prompt.
* @param menuButton The [MenuButton] that will be used to create a menu when the button is
* clicked.
* @param fxaEntrypoint The source entry point to FxA.
+ * @param onShowPinVerification Callback for registering the pin verification result.
+ * @param onBiometricAuthenticationSuccessful Callback for displaying the next screen after a
+ * successful biometric authentication.
*/
+@Suppress("LongParameterList")
class HomeMenuView(
private val view: View,
private val context: Context,
private val lifecycleOwner: LifecycleOwner,
private val homeActivity: HomeActivity,
private val navController: NavController,
+ private val homeFragment: HomeFragment,
private val menuButton: WeakReference<MenuButton>,
private val fxaEntrypoint: FxAEntryPoint = FenixFxAEntryPoint.HomeMenu,
+ private val onShowPinVerification: (Intent) -> Unit,
+ private val onBiometricAuthenticationSuccessful: () -> Unit,
) {
/**
@@ -166,6 +176,13 @@ class HomeMenuView(
HomeFragmentDirections.actionGlobalDownloadsFragment(),
)
}
+ HomeMenu.Item.Passwords -> {
+ bindBiometricsCredentialsPromptOrShowWarning(
+ view = view,
+ onShowPinVerification = onShowPinVerification,
+ onAuthSuccess = onBiometricAuthenticationSuccessful,
+ )
+ }
HomeMenu.Item.Help -> {
HomeMenuMetrics.helpTapped.record(NoExtras())
homeActivity.openToBrowserAndLoad(
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/ToolbarView.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/ToolbarView.kt
index 43319eb061..c8802868e8 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/ToolbarView.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/ToolbarView.kt
@@ -19,6 +19,7 @@ import androidx.core.view.updateLayoutParams
import mozilla.components.browser.state.search.SearchEngine
import mozilla.components.support.ktx.android.content.res.resolveAttribute
import org.mozilla.fenix.R
+import org.mozilla.fenix.browser.tabstrip.isTabStripEnabled
import org.mozilla.fenix.components.toolbar.IncompleteRedesignToolbarFeature
import org.mozilla.fenix.components.toolbar.ToolbarPosition
import org.mozilla.fenix.databinding.FragmentHomeBinding
@@ -106,7 +107,7 @@ class ToolbarView(
gravity = Gravity.TOP
}
- val isTabletAndTabStripEnabled = context.settings().isTabletAndTabStripEnabled
+ val isTabletAndTabStripEnabled = context.isTabStripEnabled()
ConstraintSet().apply {
clone(binding.toolbarLayout)
clear(binding.bottomBar.id, ConstraintSet.BOTTOM)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistHandler.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistHandler.kt
index 041eb95836..80bad8fc76 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistHandler.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistHandler.kt
@@ -8,7 +8,7 @@ import android.net.Uri
import androidx.annotation.VisibleForTesting
import mozilla.components.support.ktx.kotlin.sha1
import org.mozilla.fenix.ext.containsQueryParameters
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTabState
import org.mozilla.fenix.home.recenttabs.RecentTab
import org.mozilla.fenix.home.recentvisits.RecentlyVisitedItem
@@ -37,7 +37,7 @@ class BlocklistHandler(private val settings: Settings) {
* in a scope.
*/
@JvmName("filterRecentBookmark")
- fun List<RecentBookmark>.filteredByBlocklist(): List<RecentBookmark> =
+ fun List<Bookmark>.filteredByBlocklist(): List<Bookmark> =
settings.homescreenBlocklist.let { blocklist ->
filterNot {
it.url?.let { url -> blocklistContainsUrl(blocklist, url) } ?: false
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistMiddleware.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistMiddleware.kt
index 9c8928c41d..1b65af86fa 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistMiddleware.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/blocklist/BlocklistMiddleware.kt
@@ -41,7 +41,7 @@ class BlocklistMiddleware(
when (action) {
is AppAction.Change -> {
action.copy(
- recentBookmarks = action.recentBookmarks.filteredByBlocklist(),
+ bookmarks = action.bookmarks.filteredByBlocklist(),
recentTabs = action.recentTabs.filteredByBlocklist().filterContile(),
recentHistory = action.recentHistory.filteredByBlocklist().filterContile(),
recentSyncedTabState = action.recentSyncedTabState.filteredByBlocklist().filterContile(),
@@ -52,9 +52,9 @@ class BlocklistMiddleware(
recentTabs = action.recentTabs.filteredByBlocklist().filterContile(),
)
}
- is AppAction.RecentBookmarksChange -> {
+ is AppAction.BookmarksChange -> {
action.copy(
- recentBookmarks = action.recentBookmarks.filteredByBlocklist(),
+ bookmarks = action.bookmarks.filteredByBlocklist(),
)
}
is AppAction.RecentHistoryChange -> {
@@ -73,8 +73,8 @@ class BlocklistMiddleware(
action
}
}
- is AppAction.RemoveRecentBookmark -> {
- action.recentBookmark.url?.let { url ->
+ is AppAction.RemoveBookmark -> {
+ action.bookmark.url?.let { url ->
addUrlToBlocklist(url)
state.toActionFilteringAllState(this)
} ?: action
@@ -99,7 +99,7 @@ class BlocklistMiddleware(
with(blocklistHandler) {
AppAction.Change(
recentTabs = recentTabs.filteredByBlocklist().filterContile(),
- recentBookmarks = recentBookmarks.filteredByBlocklist(),
+ bookmarks = bookmarks.filteredByBlocklist(),
recentHistory = recentHistory.filteredByBlocklist().filterContile(),
topSites = topSites,
mode = mode,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/RecentBookmarksFeature.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/BookmarksFeature.kt
index 3e7dc9d6c5..79af88ea7e 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/RecentBookmarksFeature.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/BookmarksFeature.kt
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks
+package org.mozilla.fenix.home.bookmarks
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.CoroutineScope
@@ -17,16 +17,15 @@ import org.mozilla.fenix.components.bookmarks.BookmarksUseCase
import org.mozilla.fenix.home.HomeFragment
/**
- * View-bound feature that retrieves a list of recently added [BookmarkNode]s and dispatches
+ * View-bound feature that retrieves a list of [BookmarkNode]s and dispatches
* updates to the [AppStore].
*
* @param appStore the [AppStore] that holds the state of the [HomeFragment].
- * @param bookmarksUseCase the [BookmarksUseCase] for retrieving the list of recently saved
- * bookmarks from storage.
+ * @param bookmarksUseCase the [BookmarksUseCase] for retrieving the list of bookmarks from storage.
* @param scope the [CoroutineScope] used to fetch the bookmarks list
* @param ioDispatcher the [CoroutineDispatcher] for performing read/write operations.
*/
-class RecentBookmarksFeature(
+class BookmarksFeature(
private val appStore: AppStore,
private val bookmarksUseCase: BookmarksUseCase,
private val scope: CoroutineScope,
@@ -37,7 +36,7 @@ class RecentBookmarksFeature(
override fun start() {
job = scope.launch(ioDispatcher) {
val bookmarks = bookmarksUseCase.retrieveRecentBookmarks()
- appStore.dispatch(AppAction.RecentBookmarksChange(bookmarks))
+ appStore.dispatch(AppAction.BookmarksChange(bookmarks))
}
}
@@ -47,13 +46,13 @@ class RecentBookmarksFeature(
}
/**
- * A bookmark that was recently added.
+ * The simple metadata of a bookmark.
*
* @property title The title of the bookmark.
* @property url The url of the bookmark.
* @property previewImageUrl A preview image of the page (a.k.a. the hero image), if available.
*/
-data class RecentBookmark(
+data class Bookmark(
val title: String? = null,
val url: String? = null,
val previewImageUrl: String? = null,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/controller/RecentBookmarksController.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/controller/BookmarksController.kt
index a3591d9b08..6487efc1b3 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/controller/RecentBookmarksController.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/controller/BookmarksController.kt
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks.controller
+package org.mozilla.fenix.home.bookmarks.controller
import androidx.navigation.NavController
import mozilla.appservices.places.BookmarkRoot
@@ -11,49 +11,49 @@ import mozilla.components.concept.engine.EngineSession
import mozilla.components.concept.engine.EngineSession.LoadUrlFlags.Companion.ALLOW_JAVASCRIPT_URL
import mozilla.components.feature.tabs.TabsUseCases
import org.mozilla.fenix.BrowserDirection
-import org.mozilla.fenix.GleanMetrics.RecentBookmarks
+import org.mozilla.fenix.GleanMetrics.HomeBookmarks
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.components.AppStore
import org.mozilla.fenix.components.appstate.AppAction
import org.mozilla.fenix.home.HomeFragmentDirections
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
-import org.mozilla.fenix.home.recentbookmarks.interactor.RecentBookmarksInteractor
+import org.mozilla.fenix.home.bookmarks.Bookmark
+import org.mozilla.fenix.home.bookmarks.interactor.BookmarksInteractor
/**
- * An interface that handles the view manipulation of the recently saved bookmarks on the
+ * An interface that handles the view manipulation of the bookmarks on the
* Home screen.
*/
-interface RecentBookmarksController {
+interface BookmarksController {
/**
- * @see [RecentBookmarksInteractor.onRecentBookmarkClicked]
+ * @see [BookmarksInteractor.onBookmarkClicked]
*/
- fun handleBookmarkClicked(bookmark: RecentBookmark)
+ fun handleBookmarkClicked(bookmark: Bookmark)
/**
- * @see [RecentBookmarksInteractor.onShowAllBookmarksClicked]
+ * @see [BookmarksInteractor.onShowAllBookmarksClicked]
*/
fun handleShowAllBookmarksClicked()
/**
- * @see [RecentBookmarksInteractor.onRecentBookmarkRemoved]
+ * @see [BookmarksInteractor.onBookmarkRemoved]
*/
- fun handleBookmarkRemoved(bookmark: RecentBookmark)
+ fun handleBookmarkRemoved(bookmark: Bookmark)
}
/**
- * The default implementation of [RecentBookmarksController].
+ * The default implementation of [BookmarksController].
*/
-class DefaultRecentBookmarksController(
+class DefaultBookmarksController(
private val activity: HomeActivity,
private val navController: NavController,
private val appStore: AppStore,
private val browserStore: BrowserStore,
private val selectTabUseCase: TabsUseCases.SelectTabUseCase,
-) : RecentBookmarksController {
+) : BookmarksController {
- override fun handleBookmarkClicked(bookmark: RecentBookmark) {
+ override fun handleBookmarkClicked(bookmark: Bookmark) {
val existingTabForBookmark = browserStore.state.tabs.firstOrNull {
it.content.url == bookmark.url
}
@@ -70,17 +70,17 @@ class DefaultRecentBookmarksController(
navController.navigate(R.id.browserFragment)
}
- RecentBookmarks.bookmarkClicked.add()
+ HomeBookmarks.bookmarkClicked.add()
}
override fun handleShowAllBookmarksClicked() {
- RecentBookmarks.showAllBookmarks.add()
+ HomeBookmarks.showAllBookmarks.add()
navController.navigate(
HomeFragmentDirections.actionGlobalBookmarkFragment(BookmarkRoot.Mobile.id),
)
}
- override fun handleBookmarkRemoved(bookmark: RecentBookmark) {
- appStore.dispatch(AppAction.RemoveRecentBookmark(bookmark))
+ override fun handleBookmarkRemoved(bookmark: Bookmark) {
+ appStore.dispatch(AppAction.RemoveBookmark(bookmark))
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/interactor/RecentBookmarksInteractor.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/interactor/BookmarksInteractor.kt
index 810da7e14a..efe95d2979 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/interactor/RecentBookmarksInteractor.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/interactor/BookmarksInteractor.kt
@@ -2,35 +2,35 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks.interactor
+package org.mozilla.fenix.home.bookmarks.interactor
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.sessioncontrol.SessionControlInteractor
/**
- * Interface for recently saved bookmark related actions in the [SessionControlInteractor].
+ * Interface for bookmark related actions in the [SessionControlInteractor].
*/
-interface RecentBookmarksInteractor {
+interface BookmarksInteractor {
/**
- * Opens the given bookmark in a new tab. Called when an user clicks on a recently saved
- * bookmark on the home screen.
+ * Opens the given bookmark in a new tab. Called when an user clicks on a bookmark on the home
+ * screen.
*
* @param bookmark The bookmark that will be opened.
*/
- fun onRecentBookmarkClicked(bookmark: RecentBookmark)
+ fun onBookmarkClicked(bookmark: Bookmark)
/**
* Navigates to bookmark list. Called when an user clicks on the "Show all" button for
- * recently saved bookmarks on the home screen.
+ * bookmarks on the home screen.
*/
fun onShowAllBookmarksClicked()
/**
- * Removes a bookmark from the recent bookmark list. Called when a user clicks the "Remove"
- * button for recently saved bookmarks on the home screen.
+ * Removes a bookmark from the list on the home screen. Called when a user clicks the "Remove"
+ * button for a bookmark on the home screen.
*
* @param bookmark The bookmark that has been removed.
*/
- fun onRecentBookmarkRemoved(bookmark: RecentBookmark)
+ fun onBookmarkRemoved(bookmark: Bookmark)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarks.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/Bookmarks.kt
index df32d3940b..6f70c98db8 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarks.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/Bookmarks.kt
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks.view
+package org.mozilla.fenix.home.bookmarks.view
import androidx.compose.foundation.ExperimentalFoundationApi
import androidx.compose.foundation.background
@@ -49,7 +49,7 @@ import org.mozilla.fenix.compose.Image
import org.mozilla.fenix.compose.MenuItem
import org.mozilla.fenix.compose.annotation.LightDarkPreview
import org.mozilla.fenix.compose.inComposePreview
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.theme.FirefoxTheme
private val cardShape = RoundedCornerShape(8.dp)
@@ -61,58 +61,58 @@ private val imageModifier = Modifier
.clip(cardShape)
/**
- * A list of recent bookmarks.
+ * A list of bookmarks.
*
- * @param bookmarks List of [RecentBookmark]s to display.
- * @param menuItems List of [RecentBookmarksMenuItem] shown when long clicking a [RecentBookmarkItem]
+ * @param bookmarks List of [Bookmark]s to display.
+ * @param menuItems List of [BookmarksMenuItem] shown when long clicking a [BookmarkItem]
* @param backgroundColor The background [Color] of each bookmark.
- * @param onRecentBookmarkClick Invoked when the user clicks on a recent bookmark.
+ * @param onBookmarkClick Invoked when the user clicks on a bookmark.
*/
@OptIn(ExperimentalComposeUiApi::class)
@Composable
-fun RecentBookmarks(
- bookmarks: List<RecentBookmark>,
- menuItems: List<RecentBookmarksMenuItem>,
+fun Bookmarks(
+ bookmarks: List<Bookmark>,
+ menuItems: List<BookmarksMenuItem>,
backgroundColor: Color,
- onRecentBookmarkClick: (RecentBookmark) -> Unit = {},
+ onBookmarkClick: (Bookmark) -> Unit = {},
) {
LazyRow(
modifier = Modifier.semantics {
testTagsAsResourceId = true
- testTag = "recent.bookmarks"
+ testTag = "bookmarks"
},
contentPadding = PaddingValues(horizontal = 16.dp),
horizontalArrangement = Arrangement.spacedBy(8.dp),
) {
items(bookmarks) { bookmark ->
- RecentBookmarkItem(
+ BookmarkItem(
bookmark = bookmark,
menuItems = menuItems,
backgroundColor = backgroundColor,
- onRecentBookmarkClick = onRecentBookmarkClick,
+ onBookmarkClick = onBookmarkClick,
)
}
}
}
/**
- * A recent bookmark item.
+ * A bookmark item.
*
- * @param bookmark The [RecentBookmark] to display.
- * @param menuItems The list of [RecentBookmarksMenuItem] shown when long clicking on the recent bookmark item.
- * @param backgroundColor The background [Color] of the recent bookmark item.
- * @param onRecentBookmarkClick Invoked when the user clicks on the recent bookmark item.
+ * @param bookmark The [Bookmark] to display.
+ * @param menuItems The list of [BookmarksMenuItem] shown when long clicking on the bookmark item.
+ * @param backgroundColor The background [Color] of the bookmark item.
+ * @param onBookmarkClick Invoked when the user clicks on the bookmark item.
*/
@OptIn(
ExperimentalFoundationApi::class,
ExperimentalComposeUiApi::class,
)
@Composable
-private fun RecentBookmarkItem(
- bookmark: RecentBookmark,
- menuItems: List<RecentBookmarksMenuItem>,
+private fun BookmarkItem(
+ bookmark: Bookmark,
+ menuItems: List<BookmarksMenuItem>,
backgroundColor: Color,
- onRecentBookmarkClick: (RecentBookmark) -> Unit = {},
+ onBookmarkClick: (Bookmark) -> Unit = {},
) {
var isMenuExpanded by remember { mutableStateOf(false) }
@@ -121,7 +121,7 @@ private fun RecentBookmarkItem(
.width(158.dp)
.combinedClickable(
enabled = true,
- onClick = { onRecentBookmarkClick(bookmark) },
+ onClick = { onBookmarkClick(bookmark) },
onLongClick = { isMenuExpanded = true },
),
shape = cardShape,
@@ -133,7 +133,7 @@ private fun RecentBookmarkItem(
.fillMaxWidth()
.padding(start = 16.dp, end = 16.dp, top = 16.dp, bottom = 8.dp),
) {
- RecentBookmarkImage(bookmark)
+ BookmarkImage(bookmark)
Spacer(modifier = Modifier.height(8.dp))
@@ -141,7 +141,7 @@ private fun RecentBookmarkItem(
text = bookmark.title ?: bookmark.url ?: "",
modifier = Modifier.semantics {
testTagsAsResourceId = true
- testTag = "recent.bookmark.title"
+ testTag = "bookmark.title"
},
color = FirefoxTheme.colors.textPrimary,
overflow = TextOverflow.Ellipsis,
@@ -155,7 +155,7 @@ private fun RecentBookmarkItem(
menuItems = menuItems.map { item -> MenuItem(item.title) { item.onClick(bookmark) } },
modifier = Modifier.semantics {
testTagsAsResourceId = true
- testTag = "recent.bookmark.menu"
+ testTag = "bookmark.menu"
},
)
}
@@ -163,7 +163,7 @@ private fun RecentBookmarkItem(
}
@Composable
-private fun RecentBookmarkImage(bookmark: RecentBookmark) {
+private fun BookmarkImage(bookmark: Bookmark) {
when {
!bookmark.previewImageUrl.isNullOrEmpty() -> {
Image(
@@ -221,26 +221,26 @@ private fun FallbackBookmarkFaviconImage(
@Composable
@LightDarkPreview
-private fun RecentBookmarksPreview() {
+private fun BookmarksPreview() {
FirefoxTheme {
- RecentBookmarks(
+ Bookmarks(
bookmarks = listOf(
- RecentBookmark(
+ Bookmark(
title = "Other Bookmark Title",
url = "https://www.example.com",
previewImageUrl = null,
),
- RecentBookmark(
+ Bookmark(
title = "Other Bookmark Title",
url = "https://www.example.com",
previewImageUrl = null,
),
- RecentBookmark(
+ Bookmark(
title = "Other Bookmark Title",
url = "https://www.example.com",
previewImageUrl = null,
),
- RecentBookmark(
+ Bookmark(
title = "Other Bookmark Title",
url = "https://www.example.com",
previewImageUrl = null,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksHeaderViewHolder.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksHeaderViewHolder.kt
index 210bad9623..354524b7cb 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksHeaderViewHolder.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksHeaderViewHolder.kt
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks.view
+package org.mozilla.fenix.home.bookmarks.view
import android.view.View
import androidx.compose.foundation.layout.Column
@@ -17,19 +17,19 @@ import androidx.lifecycle.LifecycleOwner
import org.mozilla.fenix.R
import org.mozilla.fenix.compose.ComposeViewHolder
import org.mozilla.fenix.compose.home.HomeSectionHeader
-import org.mozilla.fenix.home.recentbookmarks.interactor.RecentBookmarksInteractor
+import org.mozilla.fenix.home.bookmarks.interactor.BookmarksInteractor
/**
- * View holder for the recent bookmarks header and "Show all" button.
+ * View holder for the bookmarks header and "Show all" button.
*
* @param composeView [ComposeView] which will be populated with Jetpack Compose UI content.
* @param viewLifecycleOwner [LifecycleOwner] life cycle owner for the view.
- * @param interactor [RecentBookmarksInteractor] which will have delegated to all user interactions.
+ * @param interactor [BookmarksInteractor] which will have delegated to all user interactions.
*/
-class RecentBookmarksHeaderViewHolder(
+class BookmarksHeaderViewHolder(
composeView: ComposeView,
viewLifecycleOwner: LifecycleOwner,
- private val interactor: RecentBookmarksInteractor,
+ private val interactor: BookmarksInteractor,
) : ComposeViewHolder(composeView, viewLifecycleOwner) {
init {
@@ -44,8 +44,8 @@ class RecentBookmarksHeaderViewHolder(
Spacer(modifier = Modifier.height(40.dp))
HomeSectionHeader(
- headerText = stringResource(R.string.recently_saved_title),
- description = stringResource(R.string.recently_saved_show_all_content_description_2),
+ headerText = stringResource(R.string.home_bookmarks_title),
+ description = stringResource(R.string.home_bookmarks_show_all_content_description),
onShowAllClick = {
interactor.onShowAllBookmarksClicked()
},
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksMenuItem.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksMenuItem.kt
index 961245ce1f..b447a71166 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksMenuItem.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksMenuItem.kt
@@ -2,17 +2,17 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks.view
+package org.mozilla.fenix.home.bookmarks.view
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
/**
- * A menu item in the recent bookmarks dropdown menu.
+ * A menu item in the bookmarks dropdown menu.
*
* @property title The menu item title.
* @property onClick Invoked when the user clicks on the menu item.
*/
-data class RecentBookmarksMenuItem(
+data class BookmarksMenuItem(
val title: String,
- val onClick: (RecentBookmark) -> Unit,
+ val onClick: (Bookmark) -> Unit,
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksViewHolder.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksViewHolder.kt
index 13912bd041..de77577701 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentbookmarks/view/RecentBookmarksViewHolder.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/bookmarks/view/BookmarksViewHolder.kt
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks.view
+package org.mozilla.fenix.home.bookmarks.view
import android.view.View
import androidx.compose.runtime.Composable
@@ -11,21 +11,24 @@ import androidx.compose.ui.res.stringResource
import androidx.lifecycle.LifecycleOwner
import mozilla.components.lib.state.ext.observeAsComposableState
import mozilla.components.service.glean.private.NoExtras
+import org.mozilla.fenix.GleanMetrics.HomeBookmarks
import org.mozilla.fenix.R
import org.mozilla.fenix.components.components
import org.mozilla.fenix.compose.ComposeViewHolder
-import org.mozilla.fenix.home.recentbookmarks.interactor.RecentBookmarksInteractor
+import org.mozilla.fenix.home.bookmarks.interactor.BookmarksInteractor
import org.mozilla.fenix.wallpapers.WallpaperState
-import org.mozilla.fenix.GleanMetrics.RecentBookmarks as RecentBookmarksMetrics
-class RecentBookmarksViewHolder(
+/**
+ * ViewHolder for the Bookmarks section in the HomeFragment.
+ */
+class BookmarksViewHolder(
composeView: ComposeView,
viewLifecycleOwner: LifecycleOwner,
- val interactor: RecentBookmarksInteractor,
+ val interactor: BookmarksInteractor,
) : ComposeViewHolder(composeView, viewLifecycleOwner) {
init {
- RecentBookmarksMetrics.shown.record(NoExtras())
+ HomeBookmarks.shown.record(NoExtras())
}
companion object {
@@ -34,18 +37,18 @@ class RecentBookmarksViewHolder(
@Composable
override fun Content() {
- val recentBookmarks = components.appStore.observeAsComposableState { state -> state.recentBookmarks }
+ val bookmarks = components.appStore.observeAsComposableState { state -> state.bookmarks }
val wallpaperState = components.appStore
.observeAsComposableState { state -> state.wallpaperState }.value ?: WallpaperState.default
- RecentBookmarks(
- bookmarks = recentBookmarks.value ?: emptyList(),
+ Bookmarks(
+ bookmarks = bookmarks.value ?: emptyList(),
backgroundColor = wallpaperState.wallpaperCardColor,
- onRecentBookmarkClick = interactor::onRecentBookmarkClicked,
+ onBookmarkClick = interactor::onBookmarkClicked,
menuItems = listOf(
- RecentBookmarksMenuItem(
- stringResource(id = R.string.recently_saved_menu_item_remove),
- onClick = { bookmark -> interactor.onRecentBookmarkRemoved(bookmark) },
+ BookmarksMenuItem(
+ stringResource(id = R.string.home_bookmarks_menu_item_remove),
+ onClick = { bookmark -> interactor.onBookmarkRemoved(bookmark) },
),
),
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/collections/CollectionViewHolder.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/collections/CollectionViewHolder.kt
index cd70ec0612..80b783b5da 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/collections/CollectionViewHolder.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/collections/CollectionViewHolder.kt
@@ -141,7 +141,7 @@ private fun getMenuItems(
MenuItem(
title = stringResource(R.string.collection_delete),
- color = FirefoxTheme.colors.textWarning,
+ color = FirefoxTheme.colors.textCritical,
) {
onDeleteCollectionTapped(collection)
},
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/intent/OpenRecentlyClosedIntentProcessor.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/intent/OpenRecentlyClosedIntentProcessor.kt
new file mode 100644
index 0000000000..441e2af7f1
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/intent/OpenRecentlyClosedIntentProcessor.kt
@@ -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/. */
+
+package org.mozilla.fenix.home.intent
+
+import android.content.Intent
+import androidx.navigation.NavController
+import org.mozilla.fenix.NavGraphDirections
+import org.mozilla.fenix.ext.nav
+
+/**
+ * Opens the "recently closed tabs" fragment when the user taps on a
+ * "synced tabs closed" notification.
+ */
+class OpenRecentlyClosedIntentProcessor : HomeIntentProcessor {
+ override fun process(intent: Intent, navController: NavController, out: Intent): Boolean {
+ return if (intent.action == ACTION_OPEN_RECENTLY_CLOSED) {
+ val directions = NavGraphDirections.actionGlobalRecentlyClosed()
+ navController.nav(null, directions)
+ true
+ } else {
+ false
+ }
+ }
+
+ companion object {
+ const val ACTION_OPEN_RECENTLY_CLOSED = "org.mozilla.fenix.open_recently_closed"
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt
index ff93260109..4b5d49e697 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt
@@ -18,13 +18,13 @@ import mozilla.components.service.nimbus.messaging.Message
import org.mozilla.fenix.components.Components
import org.mozilla.fenix.home.BottomSpacerViewHolder
import org.mozilla.fenix.home.TopPlaceholderViewHolder
+import org.mozilla.fenix.home.bookmarks.view.BookmarksHeaderViewHolder
+import org.mozilla.fenix.home.bookmarks.view.BookmarksViewHolder
import org.mozilla.fenix.home.collections.CollectionViewHolder
import org.mozilla.fenix.home.collections.TabInCollectionViewHolder
import org.mozilla.fenix.home.pocket.PocketCategoriesViewHolder
import org.mozilla.fenix.home.pocket.PocketRecommendationsHeaderViewHolder
import org.mozilla.fenix.home.pocket.PocketStoriesViewHolder
-import org.mozilla.fenix.home.recentbookmarks.view.RecentBookmarksHeaderViewHolder
-import org.mozilla.fenix.home.recentbookmarks.view.RecentBookmarksViewHolder
import org.mozilla.fenix.home.recentsyncedtabs.view.RecentSyncedTabViewHolder
import org.mozilla.fenix.home.recenttabs.view.RecentTabViewHolder
import org.mozilla.fenix.home.recenttabs.view.RecentTabsHeaderViewHolder
@@ -155,8 +155,15 @@ sealed class AdapterItem(@LayoutRes val viewType: Int) {
object RecentVisitsHeader : AdapterItem(RecentVisitsHeaderViewHolder.LAYOUT_ID)
object RecentVisitsItems : AdapterItem(RecentlyVisitedViewHolder.LAYOUT_ID)
- object RecentBookmarksHeader : AdapterItem(RecentBookmarksHeaderViewHolder.LAYOUT_ID)
- object RecentBookmarks : AdapterItem(RecentBookmarksViewHolder.LAYOUT_ID)
+ /**
+ * The header for the Bookmarks section.
+ */
+ object BookmarksHeader : AdapterItem(BookmarksHeaderViewHolder.LAYOUT_ID)
+
+ /**
+ * The Bookmarks section.
+ */
+ object Bookmarks : AdapterItem(BookmarksViewHolder.LAYOUT_ID)
object PocketStoriesItem : AdapterItem(PocketStoriesViewHolder.LAYOUT_ID)
object PocketCategoriesItem : AdapterItem(PocketCategoriesViewHolder.LAYOUT_ID)
@@ -230,7 +237,7 @@ class SessionControlAdapter(
viewLifecycleOwner = viewLifecycleOwner,
interactor = interactor,
)
- RecentBookmarksViewHolder.LAYOUT_ID -> return RecentBookmarksViewHolder(
+ BookmarksViewHolder.LAYOUT_ID -> return BookmarksViewHolder(
composeView = ComposeView(parent.context),
viewLifecycleOwner = viewLifecycleOwner,
interactor = interactor,
@@ -255,7 +262,7 @@ class SessionControlAdapter(
viewLifecycleOwner = viewLifecycleOwner,
interactor = interactor,
)
- RecentBookmarksHeaderViewHolder.LAYOUT_ID -> return RecentBookmarksHeaderViewHolder(
+ BookmarksHeaderViewHolder.LAYOUT_ID -> return BookmarksHeaderViewHolder(
composeView = ComposeView(parent.context),
viewLifecycleOwner = viewLifecycleOwner,
interactor = interactor,
@@ -314,8 +321,8 @@ class SessionControlAdapter(
is CustomizeHomeButtonViewHolder,
is RecentlyVisitedViewHolder,
is RecentVisitsHeaderViewHolder,
- is RecentBookmarksViewHolder,
- is RecentBookmarksHeaderViewHolder,
+ is BookmarksViewHolder,
+ is BookmarksHeaderViewHolder,
is RecentTabViewHolder,
is RecentSyncedTabViewHolder,
is RecentTabsHeaderViewHolder,
@@ -394,7 +401,7 @@ class SessionControlAdapter(
}
is TopSitesViewHolder,
is RecentlyVisitedViewHolder,
- is RecentBookmarksViewHolder,
+ is BookmarksViewHolder,
is RecentTabViewHolder,
is RecentSyncedTabViewHolder,
is PocketStoriesViewHolder,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlController.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlController.kt
index 6f429e6dfb..a5412eeb9a 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlController.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlController.kt
@@ -32,10 +32,10 @@ import mozilla.components.ui.widgets.withCenterAlignedButtons
import mozilla.telemetry.glean.private.NoExtras
import org.mozilla.fenix.BrowserDirection
import org.mozilla.fenix.GleanMetrics.Collections
+import org.mozilla.fenix.GleanMetrics.HomeBookmarks
import org.mozilla.fenix.GleanMetrics.HomeScreen
import org.mozilla.fenix.GleanMetrics.Pings
import org.mozilla.fenix.GleanMetrics.Pocket
-import org.mozilla.fenix.GleanMetrics.RecentBookmarks
import org.mozilla.fenix.GleanMetrics.RecentTabs
import org.mozilla.fenix.GleanMetrics.TopSites
import org.mozilla.fenix.HomeActivity
@@ -551,6 +551,6 @@ class DefaultSessionControlController(
RecentTabs.sectionVisible.set(true)
}
- RecentBookmarks.recentBookmarksCount.set(state.recentBookmarks.size.toLong())
+ HomeBookmarks.bookmarksCount.set(state.bookmarks.size.toLong())
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlInteractor.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlInteractor.kt
index 8ef6086cfe..f5d214fd92 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlInteractor.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlInteractor.kt
@@ -11,14 +11,14 @@ import mozilla.components.service.nimbus.messaging.Message
import mozilla.components.service.pocket.PocketStory
import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.components.appstate.AppState
+import org.mozilla.fenix.home.bookmarks.Bookmark
+import org.mozilla.fenix.home.bookmarks.controller.BookmarksController
+import org.mozilla.fenix.home.bookmarks.interactor.BookmarksInteractor
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesCategory
import org.mozilla.fenix.home.pocket.PocketStoriesController
import org.mozilla.fenix.home.pocket.PocketStoriesInteractor
import org.mozilla.fenix.home.privatebrowsing.controller.PrivateBrowsingController
import org.mozilla.fenix.home.privatebrowsing.interactor.PrivateBrowsingInteractor
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
-import org.mozilla.fenix.home.recentbookmarks.controller.RecentBookmarksController
-import org.mozilla.fenix.home.recentbookmarks.interactor.RecentBookmarksInteractor
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTab
import org.mozilla.fenix.home.recentsyncedtabs.controller.RecentSyncedTabController
import org.mozilla.fenix.home.recentsyncedtabs.interactor.RecentSyncedTabInteractor
@@ -229,7 +229,7 @@ class SessionControlInteractor(
private val controller: SessionControlController,
private val recentTabController: RecentTabController,
private val recentSyncedTabController: RecentSyncedTabController,
- private val recentBookmarksController: RecentBookmarksController,
+ private val bookmarksController: BookmarksController,
private val recentVisitsController: RecentVisitsController,
private val pocketStoriesController: PocketStoriesController,
private val privateBrowsingController: PrivateBrowsingController,
@@ -242,7 +242,7 @@ class SessionControlInteractor(
MessageCardInteractor,
RecentTabInteractor,
RecentSyncedTabInteractor,
- RecentBookmarksInteractor,
+ BookmarksInteractor,
RecentVisitsInteractor,
CustomizeHomeIteractor,
PocketStoriesInteractor,
@@ -366,16 +366,16 @@ class SessionControlInteractor(
recentSyncedTabController.handleRecentSyncedTabRemoved(tab)
}
- override fun onRecentBookmarkClicked(bookmark: RecentBookmark) {
- recentBookmarksController.handleBookmarkClicked(bookmark)
+ override fun onBookmarkClicked(bookmark: Bookmark) {
+ bookmarksController.handleBookmarkClicked(bookmark)
}
override fun onShowAllBookmarksClicked() {
- recentBookmarksController.handleShowAllBookmarksClicked()
+ bookmarksController.handleShowAllBookmarksClicked()
}
- override fun onRecentBookmarkRemoved(bookmark: RecentBookmark) {
- recentBookmarksController.handleBookmarkRemoved(bookmark)
+ override fun onBookmarkRemoved(bookmark: Bookmark) {
+ bookmarksController.handleBookmarkRemoved(bookmark)
}
override fun onHistoryShowAllClicked() {
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt
index 3e7e9ddee7..902d7d8688 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt
@@ -20,7 +20,7 @@ import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.ext.shouldShowRecentSyncedTabs
import org.mozilla.fenix.ext.shouldShowRecentTabs
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.recentvisits.RecentlyVisitedItem
import org.mozilla.fenix.messaging.FenixMessageSurfaceId
import org.mozilla.fenix.onboarding.HomeCFRPresenter
@@ -35,7 +35,7 @@ internal fun normalModeAdapterItems(
topSites: List<TopSite>,
collections: List<TabCollection>,
expandedCollections: Set<Long>,
- recentBookmarks: List<RecentBookmark>,
+ bookmarks: List<Bookmark>,
showCollectionsPlaceholder: Boolean,
nimbusMessageCard: Message? = null,
showRecentTab: Boolean,
@@ -72,10 +72,10 @@ internal fun normalModeAdapterItems(
}
}
- if (settings.showRecentBookmarksFeature && recentBookmarks.isNotEmpty()) {
+ if (settings.showBookmarksHomeFeature && bookmarks.isNotEmpty()) {
shouldShowCustomizeHome = true
- items.add(AdapterItem.RecentBookmarksHeader)
- items.add(AdapterItem.RecentBookmarks)
+ items.add(AdapterItem.BookmarksHeader)
+ items.add(AdapterItem.Bookmarks)
}
if (settings.historyMetadataUIFeature && recentVisits.isNotEmpty()) {
@@ -137,7 +137,7 @@ private fun AppState.toAdapterList(settings: Settings): List<AdapterItem> = when
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
showCollectionPlaceholder,
messaging.messageToShow[FenixMessageSurfaceId.HOMESCREEN],
shouldShowRecentTabs(settings),
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/PagerIndicator.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/PagerIndicator.kt
index 72f315d165..8046ed3dfd 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/PagerIndicator.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/PagerIndicator.kt
@@ -8,8 +8,8 @@ import android.content.Context
import android.util.AttributeSet
import android.util.TypedValue
import android.view.View
+import android.view.ViewGroup.LayoutParams
import android.widget.LinearLayout
-import androidx.core.view.MarginLayoutParamsCompat
import org.mozilla.fenix.R
/**
@@ -46,7 +46,7 @@ class PagerIndicator : LinearLayout {
},
LayoutParams(dpToPx(DOT_SIZE_IN_DP), dpToPx(DOT_SIZE_IN_DP)).apply {
if (!isLast) {
- MarginLayoutParamsCompat.setMarginEnd(this, dpToPx(DOT_MARGIN))
+ this.setMarginEnd(dpToPx(DOT_MARGIN))
}
},
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt
index 4664675890..5afe189836 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt
@@ -67,9 +67,7 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), UserInteractionHan
private lateinit var bookmarkStore: BookmarkFragmentStore
private lateinit var bookmarkView: BookmarkView
- private var _bookmarkInteractor: BookmarkFragmentInteractor? = null
- private val bookmarkInteractor: BookmarkFragmentInteractor
- get() = _bookmarkInteractor!!
+ private lateinit var bookmarkInteractor: BookmarkFragmentInteractor
private val sharedViewModel: BookmarksSharedViewModel by activityViewModels()
private val desktopFolders by lazy { DesktopFolders(requireContext(), showMobileRoot = false) }
@@ -92,7 +90,7 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), UserInteractionHan
BookmarkFragmentStore(BookmarkFragmentState(null))
}
- _bookmarkInteractor = BookmarkFragmentInteractor(
+ bookmarkInteractor = BookmarkFragmentInteractor(
bookmarksController = DefaultBookmarkController(
activity = requireActivity() as HomeActivity,
navController = findNavController(),
@@ -191,7 +189,7 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), UserInteractionHan
menu.findItem(R.id.delete_bookmarks_multi_select).title =
SpannableString(getString(R.string.bookmark_menu_delete_button)).apply {
- setTextColor(requireContext(), R.attr.textWarning)
+ setTextColor(requireContext(), R.attr.textCritical)
}
}
}
@@ -391,7 +389,6 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), UserInteractionHan
override fun onDestroyView() {
super.onDestroyView()
- _bookmarkInteractor = null
_binding = null
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenu.kt
index fe46380044..58864f750f 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenu.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenu.kt
@@ -104,7 +104,7 @@ class BookmarkItemMenu(
},
TextMenuCandidate(
text = context.getString(R.string.bookmark_menu_delete_button),
- textStyle = TextStyle(color = context.getColorFromAttr(R.attr.textWarning)),
+ textStyle = TextStyle(color = context.getColorFromAttr(R.attr.textCritical)),
) {
onItemTapped.invoke(Item.Delete)
},
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/edit/EditBookmarkFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/edit/EditBookmarkFragment.kt
index b80b013eba..e3e8affee8 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/edit/EditBookmarkFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/edit/EditBookmarkFragment.kt
@@ -299,7 +299,7 @@ class EditBookmarkFragment : Fragment(R.layout.fragment_edit_bookmark), MenuProv
ColorStateList.valueOf(
ContextCompat.getColor(
requireContext(),
- R.color.fx_mobile_text_color_warning,
+ R.color.fx_mobile_text_color_critical,
),
),
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadFragment.kt
index 2fcac34ab1..34d68916b9 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadFragment.kt
@@ -165,7 +165,7 @@ class DownloadFragment : LibraryPageFragment<DownloadItem>(), UserInteractionHan
menu.findItem(R.id.delete_downloads_multi_select)?.title =
SpannableString(getString(R.string.download_delete_item_1)).apply {
- setTextColor(requireContext(), R.attr.textWarning)
+ setTextColor(requireContext(), R.attr.textCritical)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadItemMenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadItemMenu.kt
index e1c4dc4407..a747139d97 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadItemMenu.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/downloads/DownloadItemMenu.kt
@@ -34,7 +34,7 @@ class DownloadItemMenu(
TextMenuCandidate(
text = context.getString(R.string.history_delete_item),
textStyle = TextStyle(
- color = context.getColorFromAttr(R.attr.textWarning),
+ color = context.getColorFromAttr(R.attr.textCritical),
),
) {
onItemTapped.invoke(Item.Delete)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt
index fbeda874b7..5de7644db3 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/history/HistoryFragment.kt
@@ -254,7 +254,7 @@ class HistoryFragment : LibraryPageFragment<History>(), UserInteractionHandler,
menu.findItem(R.id.share_history_multi_select)?.isVisible = true
menu.findItem(R.id.delete_history_multi_select)?.title =
SpannableString(getString(R.string.bookmark_menu_delete_button)).apply {
- setTextColor(requireContext(), R.attr.textWarning)
+ setTextColor(requireContext(), R.attr.textCritical)
}
} else {
inflater.inflate(R.menu.history_menu, menu)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/historymetadata/HistoryMetadataGroupFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/historymetadata/HistoryMetadataGroupFragment.kt
index 7ba3a9cf13..e84fbbc440 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/historymetadata/HistoryMetadataGroupFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/historymetadata/HistoryMetadataGroupFragment.kt
@@ -157,7 +157,7 @@ class HistoryMetadataGroupFragment :
menu.findItem(R.id.delete_history_multi_select)?.let { deleteItem ->
deleteItem.title = SpannableString(deleteItem.title).apply {
- setTextColor(requireContext(), R.attr.textWarning)
+ setTextColor(requireContext(), R.attr.textCritical)
}
}
} else {
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/recentlyclosed/RecentlyClosedFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/recentlyclosed/RecentlyClosedFragment.kt
index 593a9d3678..fb9aa6bfb7 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/recentlyclosed/RecentlyClosedFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/recentlyclosed/RecentlyClosedFragment.kt
@@ -58,7 +58,7 @@ class RecentlyClosedFragment :
inflater.inflate(R.menu.history_select_multi, menu)
menu.findItem(R.id.delete_history_multi_select)?.let { deleteItem ->
deleteItem.title = SpannableString(deleteItem.title)
- .apply { setTextColor(requireContext(), R.attr.textWarning) }
+ .apply { setTextColor(requireContext(), R.attr.textCritical) }
}
} else {
inflater.inflate(R.menu.library_menu, menu)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/FenixMessageSurfaceId.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/FenixMessageSurfaceId.kt
index f7092f6b01..e362b435cb 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/FenixMessageSurfaceId.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/FenixMessageSurfaceId.kt
@@ -22,4 +22,9 @@ object FenixMessageSurfaceId {
* A survey dialog that is intended to be disruptive.
*/
const val SURVEY = "survey"
+
+ /**
+ * A microsurvey UI for a specific feature.
+ */
+ const val MICROSURVEY = "microsurvey"
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/MessagingFeature.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/MessagingFeature.kt
index 9e9a5ef812..c8eb6508c7 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/MessagingFeature.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/messaging/MessagingFeature.kt
@@ -4,17 +4,18 @@
package org.mozilla.fenix.messaging
+import mozilla.components.service.nimbus.messaging.MessageSurfaceId
import mozilla.components.support.base.feature.LifecycleAwareFeature
import org.mozilla.fenix.components.AppStore
import org.mozilla.fenix.components.appstate.AppAction.MessagingAction
/**
- * A message observer that updates the provided.
+ * A [LifecycleAwareFeature] which tries to evaluate if message is available for the provided [surface].
*/
-class MessagingFeature(val appStore: AppStore) : LifecycleAwareFeature {
+class MessagingFeature(val appStore: AppStore, val surface: MessageSurfaceId) : LifecycleAwareFeature {
override fun start() {
- appStore.dispatch(MessagingAction.Evaluate(FenixMessageSurfaceId.HOMESCREEN))
+ appStore.dispatch(MessagingAction.Evaluate(surface))
}
override fun stop() = Unit
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyContent.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyContent.kt
new file mode 100644
index 0000000000..e89c5b64ed
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyContent.kt
@@ -0,0 +1,123 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.microsurvey.ui
+
+import androidx.annotation.DrawableRes
+import androidx.compose.foundation.Image
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.layout.size
+import androidx.compose.foundation.layout.width
+import androidx.compose.foundation.layout.wrapContentHeight
+import androidx.compose.foundation.shape.RoundedCornerShape
+import androidx.compose.material.Card
+import androidx.compose.material.Text
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.tooling.preview.PreviewScreenSizes
+import androidx.compose.ui.unit.Dp
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.compose.list.RadioButtonListItem
+import org.mozilla.fenix.theme.FirefoxTheme
+
+private val shape = RoundedCornerShape(16.dp)
+private val elevation: Dp = 5.dp
+
+/**
+ * The micro survey content UI to hold question and answer data.
+ *
+ * @param question The survey question text.
+ * @param answers The survey answer text options available for the question.
+ * @param icon The survey icon, this will represent the feature the survey is for.
+ * @param backgroundColor The view background color.
+ * @param selectedAnswer The current selected answer. Will be null until user selects an option.
+ * @param onSelectionChange An event that updates the [selectedAnswer].
+ */
+@Composable
+fun MicroSurveyContent(
+ question: String,
+ answers: List<String>,
+ @DrawableRes icon: Int = R.drawable.ic_print, // todo currently unknown what the default will be if any.
+ backgroundColor: Color = FirefoxTheme.colors.layer2,
+ selectedAnswer: String? = null,
+ onSelectionChange: (String) -> Unit,
+) {
+ Card(
+ shape = shape,
+ backgroundColor = backgroundColor,
+ elevation = elevation,
+ modifier = Modifier
+ .wrapContentHeight()
+ .fillMaxWidth(),
+ ) {
+ Column(modifier = Modifier.wrapContentHeight()) {
+ Header(icon, question)
+
+ answers.forEach {
+ RadioButtonListItem(
+ label = it,
+ selected = selectedAnswer == it,
+ onClick = {
+ onSelectionChange.invoke(it)
+ },
+ )
+ }
+ }
+ }
+}
+
+@Composable
+private fun Header(icon: Int, question: String) {
+ Row(
+ modifier = Modifier.padding(16.dp),
+ verticalAlignment = Alignment.CenterVertically,
+ ) {
+ Image(
+ painter = painterResource(icon),
+ contentDescription = "Survey icon", // todo update to string res once a11y strings are available.
+ modifier = Modifier.size(24.dp),
+ )
+
+ Spacer(modifier = Modifier.width(16.dp))
+
+ Text(
+ text = question,
+ color = FirefoxTheme.colors.textPrimary,
+ style = FirefoxTheme.typography.headline7,
+ )
+ }
+}
+
+/**
+ * Preview for [MicroSurveyContent].
+ */
+@PreviewScreenSizes
+@LightDarkPreview
+@Composable
+fun MicroSurveyContentPreview() {
+ FirefoxTheme {
+ MicroSurveyContent(
+ question = "How satisfied are you with printing in Firefox?",
+ icon = R.drawable.ic_print,
+ answers = listOf(
+ stringResource(id = R.string.likert_scale_option_1),
+ stringResource(id = R.string.likert_scale_option_2),
+ stringResource(id = R.string.likert_scale_option_3),
+ stringResource(id = R.string.likert_scale_option_4),
+ stringResource(id = R.string.likert_scale_option_5),
+ ),
+ onSelectionChange = {},
+ )
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyFooter.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyFooter.kt
new file mode 100644
index 0000000000..e9dd23c97f
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyFooter.kt
@@ -0,0 +1,105 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.microsurvey.ui
+
+import androidx.compose.foundation.layout.PaddingValues
+import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.shape.RoundedCornerShape
+import androidx.compose.material.Button
+import androidx.compose.material.ButtonDefaults
+import androidx.compose.material.Text
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.text.style.TextDecoration
+import androidx.compose.ui.tooling.preview.PreviewScreenSizes
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.compose.LinkText
+import org.mozilla.fenix.compose.LinkTextState
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.theme.FirefoxTheme
+
+/**
+ * The footer UI used for micro-survey.
+ *
+ * @param isSubmitted Whether the user has "Submitted" the survey or not.
+ * @param isContentAnswerSelected Whether the user clicked on one of the answers or not.
+ * @param onLinkClick Invoked when the link is clicked.
+ * @param onButtonClick Invoked when the "Submit"/"Close" button is clicked.
+ */
+@Composable
+fun MicroSurveyFooter(
+ isSubmitted: Boolean,
+ isContentAnswerSelected: Boolean,
+ onLinkClick: () -> Unit,
+ onButtonClick: () -> Unit,
+) {
+ val buttonText = if (isSubmitted) {
+ stringResource(id = R.string.micro_survey_close_button_label)
+ } else {
+ stringResource(id = R.string.micro_survey_submit_button_label)
+ }
+ val buttonColor = if (isContentAnswerSelected) {
+ FirefoxTheme.colors.actionPrimary
+ } else {
+ FirefoxTheme.colors.actionPrimaryDisabled
+ }
+
+ Row(
+ verticalAlignment = Alignment.Bottom,
+ modifier = Modifier.fillMaxWidth(),
+ ) {
+ LinkText(
+ text = stringResource(id = R.string.about_privacy_notice),
+ linkTextStates = listOf(
+ LinkTextState(
+ text = stringResource(id = R.string.micro_survey_privacy_notice),
+ url = "",
+ onClick = {
+ onLinkClick()
+ },
+ ),
+ ),
+ style = FirefoxTheme.typography.caption,
+ linkTextDecoration = TextDecoration.Underline,
+ )
+
+ Spacer(modifier = Modifier.weight(1f))
+
+ Button(
+ onClick = { onButtonClick() },
+ enabled = isContentAnswerSelected,
+ shape = RoundedCornerShape(size = 4.dp),
+ colors = ButtonDefaults.buttonColors(
+ backgroundColor = buttonColor,
+ ),
+ contentPadding = PaddingValues(16.dp, 12.dp),
+ ) {
+ Text(
+ text = buttonText,
+ color = FirefoxTheme.colors.textActionPrimary,
+ style = FirefoxTheme.typography.button,
+ )
+ }
+ }
+}
+
+@PreviewScreenSizes
+@LightDarkPreview
+@Composable
+private fun ReviewQualityCheckFooterPreview() {
+ FirefoxTheme {
+ MicroSurveyFooter(
+ isSubmitted = false,
+ isContentAnswerSelected = false,
+ onLinkClick = {},
+ onButtonClick = {},
+ )
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyHeader.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyHeader.kt
new file mode 100644
index 0000000000..77fda94dc2
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyHeader.kt
@@ -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/. */
+
+package org.mozilla.fenix.microsurvey.ui
+
+import androidx.compose.foundation.Image
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.Arrangement
+import androidx.compose.foundation.layout.Box
+import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.layout.size
+import androidx.compose.foundation.layout.width
+import androidx.compose.material.Icon
+import androidx.compose.material.IconButton
+import androidx.compose.material.Text
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.tooling.preview.PreviewScreenSizes
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.theme.FirefoxTheme
+
+/**
+ * The header UI used for micro-survey.
+ *
+ * @param title The text that will be visible on the header.
+ * @param onCloseButtonClick Invoked when the close button is clicked.
+ */
+@Composable
+fun MicroSurveyHeader(
+ title: String,
+ onCloseButtonClick: () -> Unit,
+) {
+ Row(
+ horizontalArrangement = Arrangement.Center,
+ verticalAlignment = Alignment.CenterVertically,
+ modifier = Modifier.fillMaxWidth(),
+ ) {
+ Image(
+ painter = painterResource(R.drawable.ic_firefox),
+ contentDescription = null, // todo update to string res once a11y strings are available.
+ modifier = Modifier.size(24.dp),
+ )
+
+ Spacer(modifier = Modifier.width(8.dp))
+
+ Text(
+ text = title,
+ style = FirefoxTheme.typography.headline7,
+ color = FirefoxTheme.colors.textPrimary,
+ modifier = Modifier.weight(1f),
+ )
+
+ IconButton(onClick = onCloseButtonClick) {
+ Icon(
+ painter = painterResource(id = R.drawable.ic_close),
+ contentDescription = null, // todo update to string res once a11y strings are available.
+ tint = FirefoxTheme.colors.iconPrimary,
+ modifier = Modifier.size(20.dp),
+ )
+ }
+ }
+}
+
+@PreviewScreenSizes
+@LightDarkPreview
+@Composable
+private fun MicroSurveyHeaderPreview() {
+ FirefoxTheme {
+ Box(
+ modifier = Modifier
+ .background(color = FirefoxTheme.colors.layer1)
+ .padding(16.dp),
+ ) {
+ MicroSurveyHeader(stringResource(R.string.micro_survey_survey_header)) {}
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyScaffold.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyScaffold.kt
new file mode 100644
index 0000000000..20294a0158
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyScaffold.kt
@@ -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/. */
+
+package org.mozilla.fenix.microsurvey.ui
+
+import androidx.compose.foundation.clickable
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.layout.height
+import androidx.compose.foundation.shape.RoundedCornerShape
+import androidx.compose.material.Card
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.remember
+import androidx.compose.runtime.setValue
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.RectangleShape
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.theme.FirefoxTheme
+
+/**
+ * A scaffold for micro-survey UI that implements the basic layout structure with
+ * [content].
+ *
+ * @param content The content of micro-survey.
+ */
+@Composable
+fun MicroSurveyScaffold(
+ content: @Composable () -> Unit,
+) {
+ var isOpen by remember { mutableStateOf(false) }
+ val cardShape = if (isOpen) {
+ RoundedCornerShape(topStart = 16.dp, topEnd = 16.dp)
+ } else {
+ RectangleShape
+ }
+ val height = if (isOpen) {
+ 600.dp
+ } else {
+ 200.dp
+ }
+
+ Card(
+ shape = cardShape,
+ backgroundColor = FirefoxTheme.colors.actionQuarternary,
+ modifier = Modifier
+ .fillMaxWidth()
+ .clickable(
+ onClick = { isOpen = !isOpen },
+ ),
+ ) {
+ Column(modifier = Modifier.height(height)) {
+ content()
+ }
+ }
+}
+
+@LightDarkPreview
+@Composable
+private fun MicroSurveyScaffoldPreview() {
+ FirefoxTheme {
+ MicroSurveyScaffold {}
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyBottomSheet.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyBottomSheet.kt
new file mode 100644
index 0000000000..eaf2f63081
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyBottomSheet.kt
@@ -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/. */
+
+package org.mozilla.fenix.microsurvey.ui
+
+import androidx.annotation.DrawableRes
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.layout.height
+import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.rememberScrollState
+import androidx.compose.foundation.shape.RoundedCornerShape
+import androidx.compose.foundation.verticalScroll
+import androidx.compose.material.Surface
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.remember
+import androidx.compose.runtime.setValue
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.semantics.semantics
+import androidx.compose.ui.semantics.traversalIndex
+import androidx.compose.ui.tooling.preview.PreviewScreenSizes
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.compose.BottomSheetHandle
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.theme.FirefoxTheme
+
+private const val BOTTOM_SHEET_HANDLE_WIDTH_PERCENT = 0.1f
+private val bottomSheetShape = RoundedCornerShape(topStart = 16.dp, topEnd = 16.dp)
+
+/**
+ * The microsurvey bottom sheet.
+ *
+ * @param question The question text.
+ * @param answers The answer text options available for the given [question].
+ * @param icon The icon that represents the feature for the given [question].
+ */
+@Composable
+fun MicrosurveyBottomSheet(
+ question: String,
+ answers: List<String>,
+ @DrawableRes icon: Int = R.drawable.ic_print, // todo currently unknown if default is used FXDROID-1921.
+) {
+ var selectedAnswer by remember { mutableStateOf<String?>(null) }
+ var isSubmitted by remember { mutableStateOf(false) }
+
+ Surface(
+ color = FirefoxTheme.colors.layer1,
+ shape = bottomSheetShape,
+ ) {
+ Column(
+ modifier = Modifier
+ .verticalScroll(rememberScrollState())
+ .padding(
+ vertical = 8.dp,
+ horizontal = 16.dp,
+ ),
+ ) {
+ BottomSheetHandle(
+ onRequestDismiss = {},
+ contentDescription = stringResource(R.string.review_quality_check_close_handle_content_description),
+ modifier = Modifier
+ .fillMaxWidth(BOTTOM_SHEET_HANDLE_WIDTH_PERCENT)
+ .align(Alignment.CenterHorizontally)
+ .semantics { traversalIndex = -1f },
+ )
+
+ Spacer(modifier = Modifier.height(4.dp))
+
+ MicroSurveyHeader(title = stringResource(id = R.string.micro_survey_survey_header)) {}
+
+ Spacer(modifier = Modifier.height(8.dp))
+
+ MicroSurveyContent(
+ question = question,
+ icon = icon,
+ answers = answers,
+ selectedAnswer = selectedAnswer,
+ onSelectionChange = { selectedAnswer = it },
+ )
+
+ Spacer(modifier = Modifier.height(24.dp))
+
+ MicroSurveyFooter(
+ isSubmitted = isSubmitted,
+ isContentAnswerSelected = selectedAnswer != null,
+ onLinkClick = {}, // todo add privacy policy link and open new tab FXDROID-1876.
+ onButtonClick = { isSubmitted = true },
+ )
+ }
+ }
+}
+
+@PreviewScreenSizes
+@LightDarkPreview
+@Composable
+private fun MicroSurveyBottomSheetPreview() {
+ FirefoxTheme {
+ MicrosurveyBottomSheet(
+ question = "How satisfied are you with printing in Firefox?",
+ icon = R.drawable.ic_print,
+ answers = listOf(
+ stringResource(id = R.string.likert_scale_option_1),
+ stringResource(id = R.string.likert_scale_option_2),
+ stringResource(id = R.string.likert_scale_option_3),
+ stringResource(id = R.string.likert_scale_option_4),
+ stringResource(id = R.string.likert_scale_option_5),
+ ),
+ )
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyBottomSheetFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyBottomSheetFragment.kt
new file mode 100644
index 0000000000..338b1f3779
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyBottomSheetFragment.kt
@@ -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/. */
+
+package org.mozilla.fenix.microsurvey.ui
+
+import android.app.Dialog
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.compose.ui.platform.ComposeView
+import androidx.compose.ui.platform.ViewCompositionStrategy
+import com.google.android.material.bottomsheet.BottomSheetBehavior
+import com.google.android.material.bottomsheet.BottomSheetDialogFragment
+import org.mozilla.fenix.R
+import org.mozilla.fenix.theme.FirefoxTheme
+
+/**
+ * todo update behaviour FXDROID-1944.
+ * todo pass question and icon values from messaging FXDROID-1945.
+ * todo add dismiss request FXDROID-1946.
+ */
+
+/**
+ * A bottom sheet fragment for displaying a microsurvey.
+ */
+class MicrosurveyBottomSheetFragment : BottomSheetDialogFragment() {
+
+ override fun onCreateDialog(savedInstanceState: Bundle?): Dialog =
+ super.onCreateDialog(savedInstanceState).apply {
+ setOnShowListener {
+ val bottomSheet = findViewById<View?>(R.id.design_bottom_sheet)
+ bottomSheet?.setBackgroundResource(android.R.color.transparent)
+ val behavior = BottomSheetBehavior.from(bottomSheet)
+ behavior.peekHeight = resources.displayMetrics.heightPixels
+ behavior.state = BottomSheetBehavior.STATE_EXPANDED
+ }
+ }
+
+ override fun onCreateView(
+ inflater: LayoutInflater,
+ container: ViewGroup?,
+ savedInstanceState: Bundle?,
+ ): View = ComposeView(requireContext()).apply {
+ val answers = listOf(
+ getString(R.string.likert_scale_option_1),
+ getString(R.string.likert_scale_option_2),
+ getString(R.string.likert_scale_option_3),
+ getString(R.string.likert_scale_option_4),
+ getString(R.string.likert_scale_option_5),
+ )
+
+ setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed)
+
+ setContent {
+ FirefoxTheme {
+ MicrosurveyBottomSheet(
+ question = "How satisfied are you with printing in Firefox?", // todo get value from messaging
+ icon = R.drawable.ic_print, // todo get value from messaging
+ answers = answers, // todo get value from messaging
+ )
+ }
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyRequestPrompt.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyRequestPrompt.kt
new file mode 100644
index 0000000000..44d3ce71b2
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyRequestPrompt.kt
@@ -0,0 +1,96 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.microsurvey.ui
+
+import androidx.compose.foundation.Image
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.Spacer
+import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.layout.height
+import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.layout.size
+import androidx.compose.foundation.layout.width
+import androidx.compose.material.Icon
+import androidx.compose.material.IconButton
+import androidx.compose.material.Text
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.tooling.preview.PreviewScreenSizes
+import androidx.compose.ui.unit.dp
+import org.mozilla.fenix.R
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
+import org.mozilla.fenix.compose.button.PrimaryButton
+import org.mozilla.fenix.theme.FirefoxTheme
+
+/**
+ * Initial microsurvey prompt displayed to the user to request completion of feedback.
+ *
+ * @param title The prompt header title.
+ */
+@Composable
+fun MicrosurveyRequestPrompt(
+ // todo this is the message title FXDROID-1966).
+ title: String = "Help make printing in Firefox better. It only takes a sec.",
+) {
+ Column(
+ modifier = Modifier
+ .background(color = FirefoxTheme.colors.layer1)
+ .padding(all = 16.dp),
+ ) {
+ Header(title)
+
+ Spacer(modifier = Modifier.height(8.dp))
+
+ PrimaryButton(text = stringResource(id = R.string.micro_survey_continue_button_label)) {}
+ }
+}
+
+@Composable
+private fun Header(
+ title: String,
+) {
+ Row(
+ modifier = Modifier.fillMaxWidth(),
+ ) {
+ Image(
+ painter = painterResource(R.drawable.ic_firefox),
+ contentDescription = null, // todo update to string res once a11y strings are available FXDROID-1919.
+ modifier = Modifier.size(24.dp),
+ )
+
+ Spacer(modifier = Modifier.width(8.dp))
+
+ Text(
+ text = title,
+ style = FirefoxTheme.typography.headline7,
+ color = FirefoxTheme.colors.textPrimary,
+ modifier = Modifier.weight(1f),
+ )
+
+ IconButton(
+ onClick = {}, // todo FXDROID-1947.
+ modifier = Modifier.size(20.dp),
+ ) {
+ Icon(
+ painter = painterResource(id = R.drawable.ic_close),
+ contentDescription = null, // todo update to string res once a11y strings are available FXDROID-1919.
+ tint = FirefoxTheme.colors.iconPrimary,
+ )
+ }
+ }
+}
+
+@PreviewScreenSizes
+@LightDarkPreview
+@Composable
+private fun MicrosurveyRequestPromptPreview() {
+ FirefoxTheme {
+ MicrosurveyRequestPrompt()
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/OnboardingFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/OnboardingFragment.kt
index 487e46b7d6..7bf2e6a547 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/OnboardingFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/OnboardingFragment.kt
@@ -10,6 +10,7 @@ import android.content.IntentFilter
import android.content.pm.ActivityInfo
import android.os.Build
import android.os.Bundle
+import android.os.StrictMode
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
@@ -29,6 +30,7 @@ import org.mozilla.fenix.components.accounts.FenixFxAEntryPoint
import org.mozilla.fenix.compose.LinkTextState
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.hideToolbar
+import org.mozilla.fenix.ext.isDefaultBrowserPromptSupported
import org.mozilla.fenix.ext.nav
import org.mozilla.fenix.ext.openSetDefaultBrowserOption
import org.mozilla.fenix.ext.requireComponents
@@ -51,7 +53,8 @@ class OnboardingFragment : Fragment() {
private val pagesToDisplay by lazy {
pagesToDisplay(
- isNotDefaultBrowser(requireContext()),
+ isNotDefaultBrowser(requireContext()) &&
+ activity?.isDefaultBrowserPromptSupported() == false,
canShowNotificationPage(requireContext()),
canShowAddSearchWidgetPrompt(),
)
@@ -76,9 +79,11 @@ class OnboardingFragment : Fragment() {
.registerReceiver(pinAppWidgetReceiver, filter)
if (isNotDefaultBrowser(context) &&
- pagesToDisplay.none { it.type == OnboardingPageUiData.Type.DEFAULT_BROWSER }
+ activity?.isDefaultBrowserPromptSupported() == true
) {
- promptToSetAsDefaultBrowser()
+ requireComponents.strictMode.resetAfter(StrictMode.allowThreadDiskReads()) {
+ promptToSetAsDefaultBrowser()
+ }
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerStopDialogFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerStopDialogFragment.kt
index f08b1a6552..351860f442 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerStopDialogFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerStopDialogFragment.kt
@@ -56,9 +56,8 @@ class ProfilerStopDialogFragment : DialogFragment() {
}
}
- override fun dismiss() {
+ private fun setProfilerState() {
profilerViewModel.setProfilerState(requireContext().components.core.engine.profiler!!.isProfilerActive())
- super.dismiss()
}
@Composable
@@ -111,7 +110,14 @@ class ProfilerStopDialogFragment : DialogFragment() {
) {
TextButton(
onClick = {
- requireContext().components.core.engine.profiler?.stopProfiler({}, {})
+ requireContext().components.core.engine.profiler?.stopProfiler(
+ onSuccess = {
+ setProfilerState()
+ },
+ onError = {
+ setProfilerState()
+ },
+ )
dismiss()
},
) {
@@ -162,6 +168,7 @@ class ProfilerStopDialogFragment : DialogFragment() {
resources.getString(message) + extra,
Toast.LENGTH_LONG,
).show()
+ setProfilerState()
dismiss()
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerUtils.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerUtils.kt
index 28a8211e59..5fddb6500e 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerUtils.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/perf/ProfilerUtils.kt
@@ -34,6 +34,7 @@ private val firefox_features = arrayOf(
"java",
"processcpu",
"ipcmessages",
+ "memory",
)
private val firefox_threads = arrayOf(
"GeckoMain",
@@ -43,7 +44,8 @@ private val firefox_threads = arrayOf(
"DOM Worker",
)
-private val graphics_features = arrayOf("stackwalk", "js", "cpu", "java", "processcpu", "ipcmessages")
+private val graphics_features =
+ arrayOf("stackwalk", "js", "cpu", "java", "processcpu", "ipcmessages", "memory")
private val graphics_threads = arrayOf(
"GeckoMain",
"Compositor",
@@ -64,6 +66,7 @@ private val media_features = arrayOf(
"ipcmessages",
"processcpu",
"java",
+ "memory",
)
private val media_threads = arrayOf(
"cubeb", "audio", "BackgroundThreadPool", "camera", "capture", "Compositor", "decoder", "GeckoMain", "gmp",
@@ -81,6 +84,7 @@ private val networking_features = arrayOf(
"processcpu",
"bandwidth",
"ipcmessages",
+ "memory",
)
private val networking_threads = arrayOf(
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt
index cd0bc2f758..def5cd4999 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt
@@ -17,6 +17,7 @@ import mozilla.components.support.ktx.android.content.res.resolveAttribute
import mozilla.components.support.ktx.android.view.hideKeyboard
import org.mozilla.fenix.GleanMetrics.Events
import org.mozilla.fenix.R
+import org.mozilla.fenix.browser.tabstrip.isTabStripEnabled
import org.mozilla.fenix.components.Components
import org.mozilla.fenix.components.toolbar.IncompleteRedesignToolbarFeature
import org.mozilla.fenix.ext.settings
@@ -139,7 +140,7 @@ class ToolbarView(
},
)
- if (settings.isTabletAndTabStripEnabled) {
+ if (context.isTabStripEnabled()) {
(layoutParams as ViewGroup.MarginLayoutParams).updateMargins(
top = context.resources.getDimensionPixelSize(R.dimen.tab_strip_height),
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt
index 9f5d6b6d05..642e4d4160 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt
@@ -19,6 +19,7 @@ import org.mozilla.fenix.GleanMetrics.AppTheme
import org.mozilla.fenix.GleanMetrics.PullToRefreshInBrowser
import org.mozilla.fenix.GleanMetrics.ToolbarSettings
import org.mozilla.fenix.R
+import org.mozilla.fenix.browser.tabstrip.isTabStripEnabled
import org.mozilla.fenix.components.toolbar.ToolbarPosition
import org.mozilla.fenix.ext.requireComponents
import org.mozilla.fenix.ext.settings
@@ -53,7 +54,7 @@ class CustomizationFragment : PreferenceFragmentCompat() {
bindLightTheme()
bindAutoBatteryTheme()
setupRadioGroups()
- val tabletAndTabStripEnabled = requireContext().settings().isTabletAndTabStripEnabled
+ val tabletAndTabStripEnabled = requireContext().isTabStripEnabled()
if (tabletAndTabStripEnabled) {
val preferenceScreen: PreferenceScreen =
requirePreference(R.string.pref_key_customization_preference_screen)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/HomeSettingsFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/HomeSettingsFragment.kt
index 9bba8fca3d..17427cda52 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/HomeSettingsFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/HomeSettingsFragment.kt
@@ -84,14 +84,14 @@ class HomeSettingsFragment : PreferenceFragmentCompat() {
}
}
- requirePreference<SwitchPreference>(R.string.pref_key_recent_bookmarks).apply {
- isChecked = context.settings().showRecentBookmarksFeature
+ requirePreference<SwitchPreference>(R.string.pref_key_customization_bookmarks).apply {
+ isChecked = context.settings().showBookmarksHomeFeature
onPreferenceChangeListener = object : SharedPreferenceUpdater() {
override fun onPreferenceChange(preference: Preference, newValue: Any?): Boolean {
CustomizeHome.preferenceToggled.record(
CustomizeHome.PreferenceToggledExtra(
newValue as Boolean,
- "recently_saved",
+ "bookmarks",
),
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/PairFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/PairFragment.kt
index 5a1f3c3a10..ea82f9f13b 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/PairFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/PairFragment.kt
@@ -16,6 +16,9 @@ import androidx.fragment.app.Fragment
import androidx.navigation.fragment.findNavController
import androidx.navigation.fragment.navArgs
import mozilla.components.feature.qr.QrFeature
+import mozilla.components.service.fxa.manager.SCOPE_PROFILE
+import mozilla.components.service.fxa.manager.SCOPE_SESSION
+import mozilla.components.service.fxa.manager.SCOPE_SYNC
import mozilla.components.support.base.feature.UserInteractionHandler
import mozilla.components.support.base.feature.ViewBoundFeatureWrapper
import org.mozilla.fenix.R
@@ -54,6 +57,7 @@ class PairFragment : Fragment(R.layout.fragment_pair), UserInteractionHandler {
requireContext(),
pairingUrl,
args.entrypoint,
+ setOf(SCOPE_SYNC, SCOPE_PROFILE, SCOPE_SESSION),
)
val vibrator = requireContext().getSystemService<Vibrator>()!!
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretSettingsFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretSettingsFragment.kt
index 5101f10f28..c50cbe6a1c 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretSettingsFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretSettingsFragment.kt
@@ -18,6 +18,7 @@ import org.mozilla.fenix.BuildConfig
import org.mozilla.fenix.Config
import org.mozilla.fenix.FeatureFlags
import org.mozilla.fenix.R
+import org.mozilla.fenix.browser.tabstrip.isTabStripEligible
import org.mozilla.fenix.debugsettings.data.DefaultDebugSettingsRepository
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.nav
@@ -142,7 +143,7 @@ class SecretSettingsFragment : PreferenceFragmentCompat() {
private fun setupTabStripPreference() {
requirePreference<SwitchPreference>(R.string.pref_key_enable_tab_strip).apply {
- isVisible = Config.channel.isNightlyOrDebug && context.resources.getBoolean(R.bool.tablet)
+ isVisible = context.isTabStripEligible()
isChecked = context.settings().isTabStripEnabled
onPreferenceChangeListener = SharedPreferenceUpdater()
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt
index d392ba8697..b6d9e1ea78 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt
@@ -47,6 +47,7 @@ import org.mozilla.fenix.GleanMetrics.Addons
import org.mozilla.fenix.GleanMetrics.CookieBanners
import org.mozilla.fenix.GleanMetrics.Events
import org.mozilla.fenix.GleanMetrics.TrackingProtection
+import org.mozilla.fenix.GleanMetrics.Translations
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.components.accounts.FenixFxAEntryPoint
@@ -158,6 +159,10 @@ class SettingsFragment : PreferenceFragmentCompat() {
updateProfilerUI(it)
},
)
+
+ findPreference<Preference>(
+ getPreferenceKey(R.string.pref_key_translation),
+ )?.isVisible = FxNimbus.features.translations.value().globalSettingsEnabled
}
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
@@ -315,6 +320,11 @@ class SettingsFragment : PreferenceFragmentCompat() {
SettingsFragmentDirections.actionSettingsFragmentToLocaleSettingsFragment()
}
+ resources.getString(R.string.pref_key_translation) -> {
+ Translations.action.record(Translations.ActionExtra("global_settings_from_preferences"))
+ SettingsFragmentDirections.actionSettingsFragmentToTranslationsSettingsFragment()
+ }
+
/* Privacy and security preferences */
resources.getString(R.string.pref_key_private_browsing) -> {
SettingsFragmentDirections.actionSettingsFragmentToPrivateBrowsingFragment()
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SupportUtils.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SupportUtils.kt
index da73fcc10e..9b0c7649ce 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SupportUtils.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SupportUtils.kt
@@ -39,6 +39,11 @@ object SupportUtils {
const val GOOGLE_XX_URL = "https://www.google.com/webhp?client=firefox-b-m&channel=ts"
const val WHATS_NEW_URL = "https://www.mozilla.org/firefox/android/notes"
+ // This is locale-less on purpose so that the content negotiation happens on the AMO side because the current
+ // user language might not be supported by AMO and/or the language might not be exactly what AMO is expecting
+ // (e.g. `en` instead of `en-US`).
+ const val AMO_HOMEPAGE_FOR_ANDROID = "${BuildConfig.AMO_BASE_URL}/android/"
+
enum class SumoTopic(internal val topicStr: String) {
HELP("faq-android"),
PRIVATE_BROWSING_MYTHS("common-myths-about-private-browsing"),
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SyncDebugFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SyncDebugFragment.kt
index b5a0886498..62f33c6ce3 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SyncDebugFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SyncDebugFragment.kt
@@ -11,6 +11,7 @@ import androidx.preference.Preference
import androidx.preference.Preference.OnPreferenceClickListener
import androidx.preference.PreferenceFragmentCompat
import org.mozilla.fenix.R
+import org.mozilla.fenix.ext.requireComponents
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.ext.showToolbar
import kotlin.system.exitProcess
@@ -59,6 +60,24 @@ class SyncDebugFragment : PreferenceFragmentCompat() {
requirePreference<CheckBoxPreference>(R.string.pref_key_use_react_fxa).apply {
onPreferenceChangeListener = SharedPreferenceUpdater()
}
+ requirePreference<Preference>(R.string.pref_key_sync_debug_network_error).let { pref ->
+ pref.onPreferenceClickListener = OnPreferenceClickListener {
+ requireComponents.backgroundServices.accountManager.simulateNetworkError()
+ true
+ }
+ }
+ requirePreference<Preference>(R.string.pref_key_sync_debug_temporary_auth_error).let { pref ->
+ pref.onPreferenceClickListener = OnPreferenceClickListener {
+ requireComponents.backgroundServices.accountManager.simulateTemporaryAuthTokenIssue()
+ true
+ }
+ }
+ requirePreference<Preference>(R.string.pref_key_sync_debug_permanent_auth_error).let { pref ->
+ pref.onPreferenceClickListener = OnPreferenceClickListener {
+ requireComponents.backgroundServices.accountManager.simulatePermanentAuthTokenIssue()
+ true
+ }
+ }
updateMenu()
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/AccountProblemFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/AccountProblemFragment.kt
index 9b82a91a88..6e39f105d4 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/AccountProblemFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/AccountProblemFragment.kt
@@ -15,6 +15,8 @@ import kotlinx.coroutines.launch
import mozilla.components.concept.sync.AccountObserver
import mozilla.components.concept.sync.AuthType
import mozilla.components.concept.sync.OAuthAccount
+import mozilla.components.service.fxa.manager.SCOPE_PROFILE
+import mozilla.components.service.fxa.manager.SCOPE_SYNC
import mozilla.telemetry.glean.private.NoExtras
import org.mozilla.fenix.GleanMetrics.SyncAuth
import org.mozilla.fenix.R
@@ -27,7 +29,11 @@ class AccountProblemFragment : PreferenceFragmentCompat(), AccountObserver {
private val args by navArgs<AccountProblemFragmentArgs>()
private val signInClickListener = Preference.OnPreferenceClickListener {
- requireComponents.services.accountsAuthFeature.beginAuthentication(requireContext(), args.entrypoint)
+ requireComponents.services.accountsAuthFeature.beginAuthentication(
+ requireContext(),
+ args.entrypoint,
+ setOf(SCOPE_PROFILE, SCOPE_SYNC),
+ )
SyncAuth.useEmailProblem.record(NoExtras())
// TODO The sign-in web content populates session history,
// so pressing "back" after signing in won't take us back into the settings screen, but rather up the
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/TurnOnSyncFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/TurnOnSyncFragment.kt
index ab03b079b7..a2e5f5b8e5 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/TurnOnSyncFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/TurnOnSyncFragment.kt
@@ -17,6 +17,8 @@ import androidx.navigation.fragment.navArgs
import mozilla.components.concept.sync.AccountObserver
import mozilla.components.concept.sync.AuthType
import mozilla.components.concept.sync.OAuthAccount
+import mozilla.components.service.fxa.manager.SCOPE_PROFILE
+import mozilla.components.service.fxa.manager.SCOPE_SYNC
import mozilla.components.support.ktx.android.content.hasCamera
import mozilla.components.support.ktx.android.content.isPermissionGranted
import mozilla.components.support.ktx.android.view.hideKeyboard
@@ -184,6 +186,7 @@ class TurnOnSyncFragment : Fragment(), AccountObserver {
requireComponents.services.accountsAuthFeature.beginAuthentication(
requireContext(),
entrypoint = args.entrypoint,
+ setOf(SCOPE_PROFILE, SCOPE_SYNC),
)
SyncAuth.useEmail.record(NoExtras())
// TODO The sign-in web content populates session history,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/biometric/BiometricUtils.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/biometric/BiometricUtils.kt
new file mode 100644
index 0000000000..db83dee4a1
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/biometric/BiometricUtils.kt
@@ -0,0 +1,110 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.settings.biometric
+
+import android.app.KeyguardManager
+import android.content.DialogInterface
+import android.content.Intent
+import android.provider.Settings
+import android.view.View
+import androidx.appcompat.app.AlertDialog
+import androidx.core.content.getSystemService
+import androidx.fragment.app.Fragment
+import androidx.fragment.app.FragmentActivity
+import androidx.fragment.app.findFragment
+import androidx.lifecycle.lifecycleScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.launch
+import mozilla.components.support.base.feature.ViewBoundFeatureWrapper
+import mozilla.components.ui.widgets.withCenterAlignedButtons
+import org.mozilla.fenix.R
+import org.mozilla.fenix.ext.runIfFragmentIsAttached
+import org.mozilla.fenix.ext.secure
+import org.mozilla.fenix.ext.settings
+
+/**
+ * Prompts the biometric authentication before navigating to new fragment
+ * or displays warning dialog in case the feature is not available
+ */
+@Suppress("Deprecation")
+fun bindBiometricsCredentialsPromptOrShowWarning(
+ view: View,
+ onShowPinVerification: (Intent) -> Unit,
+ onAuthSuccess: () -> Unit,
+ onAuthFailure: () -> Unit = {},
+ doWhileAuthenticating: () -> Unit = {},
+) {
+ val (fragment, context) = Result.runCatching {
+ view.findFragment() as Fragment to view.context
+ }.getOrElse { return }
+
+ val biometricPromptFeature = ViewBoundFeatureWrapper(
+ owner = fragment.viewLifecycleOwner,
+ view = view,
+ feature = BiometricPromptFeature(
+ context = context,
+ fragment = fragment,
+ onAuthSuccess = {
+ fragment.runIfFragmentIsAttached {
+ fragment.lifecycleScope.launch(Dispatchers.Main) {
+ onAuthSuccess()
+ }
+ }
+ },
+ onAuthFailure = onAuthFailure,
+ ),
+ )
+ // Use the BiometricPrompt first
+ if (BiometricPromptFeature.canUseFeature(context)) {
+ doWhileAuthenticating()
+ biometricPromptFeature.get()
+ ?.requestAuthentication(context.resources.getString(R.string.logins_biometric_prompt_message_2))
+ return
+ }
+
+ // Fallback to prompting for password with the KeyguardManager
+ val manager = context.getSystemService<KeyguardManager>()
+ if (manager?.isKeyguardSecure == true) {
+ val confirmDeviceCredentialIntent = manager.createConfirmDeviceCredentialIntent(
+ context.resources.getString(R.string.logins_biometric_prompt_message_pin),
+ context.resources.getString(R.string.logins_biometric_prompt_message),
+ )
+ onShowPinVerification(confirmDeviceCredentialIntent)
+ } else {
+ // Warn that the device has not been secured
+ if (context.settings().shouldShowSecurityPinWarning) {
+ fragment.activity?.let {
+ showPinDialogWarning(it, onAuthSuccess)
+ } ?: return
+ } else {
+ onAuthSuccess()
+ }
+ }
+}
+
+@Suppress("MaxLineLength")
+private fun showPinDialogWarning(
+ activity: FragmentActivity,
+ onIgnorePinWarning: () -> Unit,
+) {
+ AlertDialog.Builder(activity).apply {
+ setTitle(context.resources.getString(R.string.logins_warning_dialog_title_2))
+ setMessage(
+ context.resources.getString(R.string.logins_warning_dialog_message_2),
+ )
+
+ setNegativeButton(context.resources.getString(R.string.logins_warning_dialog_later)) { _: DialogInterface, _ ->
+ onIgnorePinWarning()
+ }
+
+ setPositiveButton(context.resources.getString(R.string.logins_warning_dialog_set_up_now)) { it: DialogInterface, _ ->
+ it.dismiss()
+ val intent = Intent(Settings.ACTION_SECURITY_SETTINGS)
+ context.startActivity(intent)
+ }
+ create().withCenterAlignedButtons()
+ }.show().secure(activity)
+ activity.settings().incrementSecureWarningCount()
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/creditcards/view/CreditCardEditorView.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/creditcards/view/CreditCardEditorView.kt
index f59b6a1f87..b2501cab3f 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/creditcards/view/CreditCardEditorView.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/creditcards/view/CreditCardEditorView.kt
@@ -62,12 +62,12 @@ class CreditCardEditorView(
binding.cardNumberLayout.setErrorTextColor(
ColorStateList.valueOf(
- binding.root.context.getColorFromAttr(R.attr.textWarning),
+ binding.root.context.getColorFromAttr(R.attr.textCritical),
),
)
binding.nameOnCardLayout.setErrorTextColor(
ColorStateList.valueOf(
- binding.root.context.getColorFromAttr(R.attr.textWarning),
+ binding.root.context.getColorFromAttr(R.attr.textCritical),
),
)
@@ -128,7 +128,7 @@ class CreditCardEditorView(
binding.cardNumberLayout.error =
binding.root.context.getString(R.string.credit_cards_number_validation_error_message_2)
- binding.cardNumberTitle.setTextColor(binding.root.context.getColorFromAttr(R.attr.textWarning))
+ binding.cardNumberTitle.setTextColor(binding.root.context.getColorFromAttr(R.attr.textCritical))
}
if (binding.nameOnCardInput.text.toString().isNotBlank()) {
@@ -139,7 +139,7 @@ class CreditCardEditorView(
binding.nameOnCardLayout.error =
binding.root.context.getString(R.string.credit_cards_name_on_card_validation_error_message_2)
- binding.nameOnCardTitle.setTextColor(binding.root.context.getColorFromAttr(R.attr.textWarning))
+ binding.nameOnCardTitle.setTextColor(binding.root.context.getColorFromAttr(R.attr.textCritical))
}
return isValid
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/AddLoginFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/AddLoginFragment.kt
index e1cadea39c..5a85e34302 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/AddLoginFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/AddLoginFragment.kt
@@ -281,7 +281,7 @@ class AddLoginFragment : Fragment(R.layout.fragment_add_login), MenuProvider {
ColorStateList.valueOf(
ContextCompat.getColor(
requireContext(),
- R.color.fx_mobile_text_color_warning,
+ R.color.fx_mobile_text_color_critical,
),
),
)
@@ -295,7 +295,7 @@ class AddLoginFragment : Fragment(R.layout.fragment_add_login), MenuProvider {
ColorStateList.valueOf(
ContextCompat.getColor(
requireContext(),
- R.color.fx_mobile_text_color_warning,
+ R.color.fx_mobile_text_color_critical,
),
),
)
@@ -319,7 +319,7 @@ class AddLoginFragment : Fragment(R.layout.fragment_add_login), MenuProvider {
layout.setErrorIconDrawable(R.drawable.mozac_ic_warning_with_bottom_padding)
layout.setErrorIconTintList(
ColorStateList.valueOf(
- ContextCompat.getColor(requireContext(), R.color.fx_mobile_text_color_warning),
+ ContextCompat.getColor(requireContext(), R.color.fx_mobile_text_color_critical),
),
)
}
@@ -332,7 +332,7 @@ class AddLoginFragment : Fragment(R.layout.fragment_add_login), MenuProvider {
layout.setErrorIconDrawable(R.drawable.mozac_ic_warning_with_bottom_padding)
layout.setErrorIconTintList(
ColorStateList.valueOf(
- ContextCompat.getColor(requireContext(), R.color.fx_mobile_text_color_warning),
+ ContextCompat.getColor(requireContext(), R.color.fx_mobile_text_color_critical),
),
)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/EditLoginFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/EditLoginFragment.kt
index 59b210ae36..5310536b77 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/EditLoginFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/EditLoginFragment.kt
@@ -273,7 +273,7 @@ class EditLoginFragment : Fragment(R.layout.fragment_edit_login), MenuProvider {
ColorStateList.valueOf(
ContextCompat.getColor(
requireContext(),
- R.color.fx_mobile_text_color_warning,
+ R.color.fx_mobile_text_color_critical,
),
),
)
@@ -290,7 +290,7 @@ class EditLoginFragment : Fragment(R.layout.fragment_edit_login), MenuProvider {
layout.setErrorIconDrawable(R.drawable.mozac_ic_warning_with_bottom_padding)
layout.setErrorIconTintList(
ColorStateList.valueOf(
- ContextCompat.getColor(requireContext(), R.color.fx_mobile_text_color_warning),
+ ContextCompat.getColor(requireContext(), R.color.fx_mobile_text_color_critical),
),
)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/SavedLoginsAuthFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/SavedLoginsAuthFragment.kt
index 5b7c0c2d71..f492e70bad 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/SavedLoginsAuthFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/fragment/SavedLoginsAuthFragment.kt
@@ -4,29 +4,16 @@
package org.mozilla.fenix.settings.logins.fragment
-import android.app.KeyguardManager
-import android.content.Context
-import android.content.DialogInterface
import android.content.Intent
import android.os.Bundle
-import android.provider.Settings.ACTION_SECURITY_SETTINGS
-import android.view.View
import androidx.activity.result.ActivityResultLauncher
-import androidx.appcompat.app.AlertDialog
-import androidx.core.content.getSystemService
-import androidx.lifecycle.lifecycleScope
import androidx.navigation.fragment.findNavController
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
import androidx.preference.SwitchPreference
-import kotlinx.coroutines.Dispatchers.Main
-import kotlinx.coroutines.delay
-import kotlinx.coroutines.launch
import mozilla.components.feature.autofill.preference.AutofillPreference
import mozilla.components.service.fxa.SyncEngine
import mozilla.components.service.glean.private.NoExtras
-import mozilla.components.support.base.feature.ViewBoundFeatureWrapper
-import mozilla.components.ui.widgets.withCenterAlignedButtons
import org.mozilla.fenix.GleanMetrics.Logins
import org.mozilla.fenix.R
import org.mozilla.fenix.components.accounts.FenixFxAEntryPoint
@@ -34,24 +21,20 @@ import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.navigateWithBreadcrumb
import org.mozilla.fenix.ext.registerForActivityResult
import org.mozilla.fenix.ext.requireComponents
-import org.mozilla.fenix.ext.runIfFragmentIsAttached
-import org.mozilla.fenix.ext.secure
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.ext.showToolbar
import org.mozilla.fenix.settings.SharedPreferenceUpdater
import org.mozilla.fenix.settings.SyncPreferenceView
-import org.mozilla.fenix.settings.biometric.BiometricPromptFeature
+import org.mozilla.fenix.settings.biometric.bindBiometricsCredentialsPromptOrShowWarning
import org.mozilla.fenix.settings.requirePreference
@Suppress("TooManyFunctions")
class SavedLoginsAuthFragment : PreferenceFragmentCompat() {
- private val biometricPromptFeature = ViewBoundFeatureWrapper<BiometricPromptFeature>()
- private lateinit var startForResult: ActivityResultLauncher<Intent>
+ private lateinit var savedLoginsFragmentLauncher: ActivityResultLauncher<Intent>
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
-
- startForResult = registerForActivityResult {
+ savedLoginsFragmentLauncher = registerForActivityResult {
navigateToSavedLoginsFragment()
}
}
@@ -71,32 +54,7 @@ class SavedLoginsAuthFragment : PreferenceFragmentCompat() {
requirePreference<Preference>(R.string.pref_key_saved_logins).isEnabled = enabled
}
- private fun navigateToSavedLogins() {
- runIfFragmentIsAttached {
- viewLifecycleOwner.lifecycleScope.launch(Main) {
- // Workaround for likely biometric library bug
- // https://github.com/mozilla-mobile/fenix/issues/8438
- delay(SHORT_DELAY_MS)
- navigateToSavedLoginsFragment()
- }
- }
- }
-
- override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
- super.onViewCreated(view, savedInstanceState)
-
- biometricPromptFeature.set(
- feature = BiometricPromptFeature(
- context = requireContext(),
- fragment = this,
- onAuthFailure = { togglePrefsEnabledWhileAuthenticating(true) },
- onAuthSuccess = ::navigateToSavedLogins,
- ),
- owner = this,
- view = view,
- )
- }
-
+ @Suppress("LongMethod")
override fun onResume() {
super.onResume()
showToolbar(getString(R.string.preferences_passwords_logins_and_passwords))
@@ -146,7 +104,17 @@ class SavedLoginsAuthFragment : PreferenceFragmentCompat() {
}
requirePreference<Preference>(R.string.pref_key_saved_logins).setOnPreferenceClickListener {
- verifyCredentialsOrShowSetupWarning(it.context)
+ view?.let { view ->
+ bindBiometricsCredentialsPromptOrShowWarning(
+ view = view,
+ onShowPinVerification = { intent ->
+ savedLoginsFragmentLauncher.launch(intent)
+ },
+ onAuthSuccess = ::navigateToSavedLoginsFragment,
+ onAuthFailure = { togglePrefsEnabledWhileAuthenticating(true) },
+ doWhileAuthenticating = { togglePrefsEnabledWhileAuthenticating(false) },
+ )
+ }
true
}
@@ -178,60 +146,6 @@ class SavedLoginsAuthFragment : PreferenceFragmentCompat() {
togglePrefsEnabledWhileAuthenticating(true)
}
- private fun verifyCredentialsOrShowSetupWarning(context: Context) {
- // Use the BiometricPrompt first
- if (BiometricPromptFeature.canUseFeature(context)) {
- togglePrefsEnabledWhileAuthenticating(false)
- biometricPromptFeature.get()
- ?.requestAuthentication(getString(R.string.logins_biometric_prompt_message_2))
- return
- }
-
- // Fallback to prompting for password with the KeyguardManager
- val manager = context.getSystemService<KeyguardManager>()
- if (manager?.isKeyguardSecure == true) {
- showPinVerification(manager)
- } else {
- // Warn that the device has not been secured
- if (context.settings().shouldShowSecurityPinWarning) {
- showPinDialogWarning(context)
- } else {
- navigateToSavedLoginsFragment()
- }
- }
- }
-
- private fun showPinDialogWarning(context: Context) {
- AlertDialog.Builder(context).apply {
- setTitle(getString(R.string.logins_warning_dialog_title_2))
- setMessage(
- getString(R.string.logins_warning_dialog_message_2),
- )
-
- setNegativeButton(getString(R.string.logins_warning_dialog_later)) { _: DialogInterface, _ ->
- navigateToSavedLoginsFragment()
- }
-
- setPositiveButton(getString(R.string.logins_warning_dialog_set_up_now)) { it: DialogInterface, _ ->
- it.dismiss()
- val intent = Intent(ACTION_SECURITY_SETTINGS)
- startActivity(intent)
- }
- create().withCenterAlignedButtons()
- }.show().secure(activity)
- context.settings().incrementSecureWarningCount()
- }
-
- @Suppress("Deprecation")
- private fun showPinVerification(manager: KeyguardManager) {
- val intent = manager.createConfirmDeviceCredentialIntent(
- getString(R.string.logins_biometric_prompt_message_pin),
- getString(R.string.logins_biometric_prompt_message),
- )
-
- startForResult.launch(intent)
- }
-
/**
* Called when authentication succeeds.
*/
@@ -260,9 +174,4 @@ class SavedLoginsAuthFragment : PreferenceFragmentCompat() {
SavedLoginsAuthFragmentDirections.actionSavedLoginsAuthFragmentToLoginExceptionsFragment()
findNavController().navigate(directions)
}
-
- companion object {
- const val SHORT_DELAY_MS = 100L
- const val PIN_REQUEST = 303
- }
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineMenu.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineMenu.kt
index d28867513b..cb1b17788f 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineMenu.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineMenu.kt
@@ -40,7 +40,7 @@ class SearchEngineMenu(
items.add(
SimpleBrowserMenuItem(
context.getString(R.string.search_engine_delete),
- textColorResource = ThemeManager.resolveAttribute(R.attr.textWarning, context),
+ textColorResource = ThemeManager.resolveAttribute(R.attr.textCritical, context),
) {
onItemTapped.invoke(Item.Delete)
},
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineShortcuts.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineShortcuts.kt
index 46ca337e42..04d4d90dde 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineShortcuts.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineShortcuts.kt
@@ -198,13 +198,13 @@ private fun SearchItem(
menuItems = listOf(
MenuItem(
stringResource(R.string.search_engine_edit),
- color = FirefoxTheme.colors.textWarning,
+ color = FirefoxTheme.colors.textCritical,
) {
onEditEngineClicked(engine)
},
MenuItem(
stringResource(R.string.search_engine_delete),
- color = FirefoxTheme.colors.textWarning,
+ color = FirefoxTheme.colors.textCritical,
) {
onDeleteEngineClicked(engine)
},
@@ -268,7 +268,7 @@ private fun SearchEngineShortcutsPreview() {
initialState = BrowserState(
search = SearchState(
regionSearchEngines = generateFakeEnginesList(),
- disabledSearchEngineIds = listOf("8", "9"),
+ disabledSearchEngineIds = listOf("7", "8"),
),
),
),
@@ -288,13 +288,12 @@ private fun generateFakeEnginesList(): List<SearchEngine> {
generateFakeEngines("1", "Google"),
generateFakeEngines("2", "Bing"),
generateFakeEngines("3", "Bing"),
- generateFakeEngines("4", "Amazon.com"),
- generateFakeEngines("5", "DuckDuckGo"),
- generateFakeEngines("6", "Qwant"),
- generateFakeEngines("7", "eBay"),
- generateFakeEngines("8", "Reddit"),
- generateFakeEngines("9", "YouTube"),
- generateFakeEngines("10", "Yandex", SearchEngine.Type.CUSTOM),
+ generateFakeEngines("4", "DuckDuckGo"),
+ generateFakeEngines("5", "Qwant"),
+ generateFakeEngines("6", "eBay"),
+ generateFakeEngines("7", "Reddit"),
+ generateFakeEngines("8", "YouTube"),
+ generateFakeEngines("9", "Yandex", SearchEngine.Type.CUSTOM),
)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/SaveToPDFMiddleware.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/SaveToPDFMiddleware.kt
index 25f28887f4..3e9593851b 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/SaveToPDFMiddleware.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/SaveToPDFMiddleware.kt
@@ -16,6 +16,7 @@ import mozilla.components.browser.state.state.BrowserState
import mozilla.components.browser.state.state.TabSessionState
import mozilla.components.lib.state.Middleware
import mozilla.components.lib.state.MiddlewareContext
+import org.mozilla.experiments.nimbus.NimbusEventStore
import org.mozilla.fenix.GleanMetrics.Events
import org.mozilla.fenix.R
import org.mozilla.fenix.browser.StandardSnackbarError
@@ -35,10 +36,12 @@ import java.io.IOException
*
* @param context An Application context.
* @param mainScope Coroutine scope to launch coroutines.
+ * @param nimbusEventStore Nimbus event store for recording events.
*/
class SaveToPDFMiddleware(
private val context: Context,
private val mainScope: CoroutineScope = CoroutineScope(Dispatchers.Main),
+ private val nimbusEventStore: NimbusEventStore = context.components.nimbus.events,
) : Middleware<BrowserState, BrowserAction> {
override fun invoke(
@@ -151,6 +154,7 @@ class SaveToPDFMiddleware(
source = telemetrySource(isPdf),
),
)
+ nimbusEventStore.recordEvent("print_tapped")
} else {
Events.saveToPdfTapped.record(
Events.SaveToPdfTappedExtra(
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/ReviewQualityCheckInfoCard.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/ReviewQualityCheckInfoCard.kt
index 3fbb9b8d5a..5c033066c7 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/ReviewQualityCheckInfoCard.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/ReviewQualityCheckInfoCard.kt
@@ -40,19 +40,20 @@ import org.mozilla.fenix.theme.FirefoxTheme
/**
* Review Quality Check Info Card UI.
*
+ * @param modifier Modifier to be applied to the card.
* @param title The primary text of the info message.
* @param type The [ReviewQualityCheckInfoType] of message to display.
- * @param modifier Modifier to be applied to the card.
* @param verticalRowAlignment An optional adjustment of how the row of text aligns.
* @param description The optional secondary piece of text.
* @param footer An optional piece of text with a clickable link.
* @param buttonText The text to show in the optional button.
*/
+@Suppress("LongMethod")
@Composable
fun ReviewQualityCheckInfoCard(
- title: String,
- type: ReviewQualityCheckInfoType,
modifier: Modifier = Modifier,
+ title: String? = null,
+ type: ReviewQualityCheckInfoType,
verticalRowAlignment: Alignment.Vertical = Alignment.Top,
description: String? = null,
footer: Pair<String, LinkTextState>? = null,
@@ -67,7 +68,7 @@ fun ReviewQualityCheckInfoCard(
),
elevation = 0.dp,
) {
- val titleContentDescription = headingResource(title)
+ val titleContentDescription = title?.let { headingResource(it) }
Row(
verticalAlignment = verticalRowAlignment,
@@ -81,7 +82,10 @@ fun ReviewQualityCheckInfoCard(
InfoCardIcon(iconId = R.drawable.mozac_ic_checkmark_24)
}
- ReviewQualityCheckInfoType.Error,
+ ReviewQualityCheckInfoType.Error -> {
+ InfoCardIcon(iconId = R.drawable.mozac_ic_critical_fill_24)
+ }
+
ReviewQualityCheckInfoType.Info,
ReviewQualityCheckInfoType.AnalysisUpdate,
-> {
@@ -92,18 +96,22 @@ fun ReviewQualityCheckInfoCard(
Spacer(modifier = Modifier.width(12.dp))
Column {
- Text(
- text = title,
- color = FirefoxTheme.colors.textPrimary,
- style = FirefoxTheme.typography.headline8,
- modifier = Modifier.semantics {
- heading()
- contentDescription = titleContentDescription
- },
- )
+ title?.let {
+ Text(
+ text = it,
+ color = FirefoxTheme.colors.textPrimary,
+ style = FirefoxTheme.typography.headline8,
+ modifier = Modifier.semantics {
+ heading()
+ if (titleContentDescription != null) {
+ contentDescription = titleContentDescription
+ }
+ },
+ )
+ }
description?.let {
- Spacer(modifier = Modifier.height(4.dp))
+ title?.let { Spacer(modifier = Modifier.height(4.dp)) }
Text(
text = description,
@@ -170,9 +178,9 @@ enum class ReviewQualityCheckInfoType {
@Composable
get() = when (this) {
Warning -> FirefoxTheme.colors.layerWarning
- Confirmation -> FirefoxTheme.colors.layerConfirmation
- Error -> FirefoxTheme.colors.layerError
- Info -> FirefoxTheme.colors.layerInfo
+ Confirmation -> FirefoxTheme.colors.layerSuccess
+ Error -> FirefoxTheme.colors.layerCritical
+ Info -> FirefoxTheme.colors.layerInformation
AnalysisUpdate -> Color.Transparent
}
@@ -180,9 +188,9 @@ enum class ReviewQualityCheckInfoType {
@Composable
get() = when (this) {
Warning -> FirefoxTheme.colors.actionWarning
- Confirmation -> FirefoxTheme.colors.actionConfirmation
- Error -> FirefoxTheme.colors.actionError
- Info -> FirefoxTheme.colors.actionInfo
+ Confirmation -> FirefoxTheme.colors.actionSuccess
+ Error -> FirefoxTheme.colors.actionCritical
+ Info -> FirefoxTheme.colors.actionInformation
AnalysisUpdate -> FirefoxTheme.colors.actionSecondary
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsController.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsController.kt
index 27336f6343..58b0042c64 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsController.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsController.kt
@@ -16,4 +16,9 @@ interface SyncedTabsController {
* @param tab The synced [Tab] that was clicked.
*/
fun handleSyncedTabClicked(tab: Tab)
+
+ /**
+ * Handles a click on the "close" button for a synced tab.
+ */
+ fun handleSyncedTabClosed(deviceId: String, tab: Tab)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsInteractor.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsInteractor.kt
index 153a0f48d7..f37655bcac 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsInteractor.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/SyncedTabsInteractor.kt
@@ -16,4 +16,9 @@ interface SyncedTabsInteractor {
* @param tab The synced [Tab] that was clicked.
*/
fun onSyncedTabClicked(tab: Tab)
+
+ /**
+ * Invoked when the user closes a synced [Tab].
+ */
+ fun onSyncedTabClosed(deviceId: String, tab: Tab)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTray.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTray.kt
index 65909b5261..533a6454df 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTray.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTray.kt
@@ -48,6 +48,8 @@ import org.mozilla.fenix.tabstray.syncedtabs.SyncedTabsList
import org.mozilla.fenix.tabstray.syncedtabs.SyncedTabsListItem
import org.mozilla.fenix.theme.FirefoxTheme
import mozilla.components.browser.storage.sync.Tab as SyncTab
+import org.mozilla.fenix.tabstray.syncedtabs.OnTabClick as OnSyncedTabClick
+import org.mozilla.fenix.tabstray.syncedtabs.OnTabCloseClick as OnSyncedTabClose
/**
* Top-level UI for displaying the Tabs Tray feature.
@@ -75,6 +77,7 @@ import mozilla.components.browser.storage.sync.Tab as SyncTab
* @param onInactiveTabClick Invoked when the user clicks on an inactive tab.
* @param onInactiveTabClose Invoked when the user clicks on an inactive tab's close button.
* @param onSyncedTabClick Invoked when the user clicks on a synced tab.
+ * @param onSyncedTabClose Invoked when the user clicks on a synced tab's close button.
* @param onSaveToCollectionClick Invoked when the user clicks on the save to collection button from
* the multi select banner.
* @param onShareSelectedTabsClick Invoked when the user clicks on the share button from the
@@ -92,6 +95,10 @@ import mozilla.components.browser.storage.sync.Tab as SyncTab
* @param onTabAutoCloseBannerDismiss Invoked when the user clicks to dismiss the auto close banner.
* @param onTabAutoCloseBannerShown Invoked when the auto close banner has been shown to the user.
* @param onMove Invoked after the drag and drop gesture completed. Swaps positions of two tabs.
+ * @param shouldShowInactiveTabsCFR Returns whether the inactive tabs CFR should be displayed.
+ * @param onInactiveTabsCFRShown Invoked when the inactive tabs CFR is displayed.
+ * @param onInactiveTabsCFRClick Invoked when the inactive tabs CFR is clicked.
+ * @param onInactiveTabsCFRDismiss Invoked when the inactive tabs CFR is dismissed.
*/
@OptIn(ExperimentalFoundationApi::class)
@Suppress("LongMethod", "LongParameterList", "ComplexMethod")
@@ -116,7 +123,8 @@ fun TabsTray(
onEnableInactiveTabAutoCloseClick: () -> Unit,
onInactiveTabClick: (TabSessionState) -> Unit,
onInactiveTabClose: (TabSessionState) -> Unit,
- onSyncedTabClick: (SyncTab) -> Unit,
+ onSyncedTabClick: OnSyncedTabClick,
+ onSyncedTabClose: OnSyncedTabClose,
onSaveToCollectionClick: () -> Unit,
onShareSelectedTabsClick: () -> Unit,
onShareAllTabsClick: () -> Unit,
@@ -132,6 +140,10 @@ fun TabsTray(
onTabAutoCloseBannerDismiss: () -> Unit,
onTabAutoCloseBannerShown: () -> Unit,
onMove: (String, String?, Boolean) -> Unit,
+ shouldShowInactiveTabsCFR: () -> Boolean,
+ onInactiveTabsCFRShown: () -> Unit,
+ onInactiveTabsCFRClick: () -> Unit,
+ onInactiveTabsCFRDismiss: () -> Unit,
) {
val multiselectMode = tabsTrayStore
.observeAsComposableState { state -> state.mode }.value ?: TabsTrayState.Mode.Normal
@@ -210,6 +222,10 @@ fun TabsTray(
onInactiveTabClick = onInactiveTabClick,
onInactiveTabClose = onInactiveTabClose,
onMove = onMove,
+ shouldShowInactiveTabsCFR = shouldShowInactiveTabsCFR,
+ onInactiveTabsCFRShown = onInactiveTabsCFRShown,
+ onInactiveTabsCFRClick = onInactiveTabsCFRClick,
+ onInactiveTabsCFRDismiss = onInactiveTabsCFRDismiss,
)
}
@@ -230,6 +246,7 @@ fun TabsTray(
SyncedTabsPage(
tabsTrayStore = tabsTrayStore,
onTabClick = onSyncedTabClick,
+ onTabClose = onSyncedTabClose,
)
}
}
@@ -258,6 +275,10 @@ private fun NormalTabsPage(
onInactiveTabClick: (TabSessionState) -> Unit,
onInactiveTabClose: (TabSessionState) -> Unit,
onMove: (String, String?, Boolean) -> Unit,
+ shouldShowInactiveTabsCFR: () -> Boolean,
+ onInactiveTabsCFRShown: () -> Unit,
+ onInactiveTabsCFRClick: () -> Unit,
+ onInactiveTabsCFRDismiss: () -> Unit,
) {
val inactiveTabsExpanded = appStore
.observeAsComposableState { state -> state.inactiveTabsExpanded }.value ?: false
@@ -283,6 +304,7 @@ private fun NormalTabsPage(
inactiveTabs = inactiveTabs,
expanded = inactiveTabsExpanded,
showAutoCloseDialog = showAutoCloseDialog,
+ showCFR = shouldShowInactiveTabsCFR(),
onHeaderClick = onInactiveTabsHeaderClick,
onDeleteAllButtonClick = onDeleteAllInactiveTabsClick,
onAutoCloseDismissClick = {
@@ -295,6 +317,9 @@ private fun NormalTabsPage(
},
onTabClick = onInactiveTabClick,
onTabCloseClick = onInactiveTabClose,
+ onCFRShown = onInactiveTabsCFRShown,
+ onCFRClick = onInactiveTabsCFRClick,
+ onCFRDismiss = onInactiveTabsCFRDismiss,
)
}
}
@@ -366,7 +391,8 @@ private fun PrivateTabsPage(
@Composable
private fun SyncedTabsPage(
tabsTrayStore: TabsTrayStore,
- onTabClick: (SyncTab) -> Unit,
+ onTabClick: OnSyncedTabClick,
+ onTabClose: OnSyncedTabClose,
) {
val syncedTabs = tabsTrayStore
.observeAsComposableState { state -> state.syncedTabs }.value ?: emptyList()
@@ -374,6 +400,7 @@ private fun SyncedTabsPage(
SyncedTabsList(
syncedTabs = syncedTabs,
onTabClick = onTabClick,
+ onTabCloseClick = onTabClose,
)
}
@@ -565,6 +592,7 @@ private fun TabsTrayPreviewRoot(
onInactiveTabClick = {},
onInactiveTabClose = inactiveTabsState::remove,
onSyncedTabClick = {},
+ onSyncedTabClose = { _, _ -> },
onSaveToCollectionClick = {},
onShareSelectedTabsClick = {},
onShareAllTabsClick = {},
@@ -580,6 +608,10 @@ private fun TabsTrayPreviewRoot(
onTabAutoCloseBannerDismiss = {},
onTabAutoCloseBannerShown = {},
onMove = { _, _, _ -> },
+ shouldShowInactiveTabsCFR = { false },
+ onInactiveTabsCFRShown = {},
+ onInactiveTabsCFRClick = {},
+ onInactiveTabsCFRDismiss = {},
)
}
}
@@ -607,10 +639,15 @@ private fun generateFakeSyncedTabsList(deviceCount: Int = 1): List<SyncedTabsLis
)
}
-private fun generateFakeSyncedTab(tabName: String, tabUrl: String): SyncedTabsListItem.Tab =
+private fun generateFakeSyncedTab(
+ tabName: String,
+ tabUrl: String,
+ action: SyncedTabsListItem.Tab.Action = SyncedTabsListItem.Tab.Action.None,
+): SyncedTabsListItem.Tab =
SyncedTabsListItem.Tab(
tabName.ifEmpty { tabUrl },
tabUrl,
+ action,
SyncTab(
history = listOf(TabEntry(tabName, tabUrl, null)),
active = 0,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayController.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayController.kt
index a48e1d622f..51e23f4b3a 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayController.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayController.kt
@@ -21,6 +21,7 @@ import mozilla.components.browser.storage.sync.Tab
import mozilla.components.concept.base.profiler.Profiler
import mozilla.components.concept.engine.mediasession.MediaSession.PlaybackState
import mozilla.components.concept.engine.prompt.ShareData
+import mozilla.components.feature.accounts.push.CloseTabsUseCases
import mozilla.components.feature.downloads.ui.DownloadCancelDialogFragment
import mozilla.components.feature.tabs.TabsUseCases
import mozilla.components.lib.state.DelicateAction
@@ -185,7 +186,8 @@ interface TabsTrayController : SyncedTabsController, InactiveTabsController, Tab
* @param navigationInteractor [NavigationInteractor] used to perform navigation actions with side effects.
* @param tabsUseCases Use case wrapper for interacting with tabs.
* @param bookmarksUseCase Use case wrapper for interacting with bookmarks.
- * @param ioDispatcher [CoroutineContext] used to handle saving tabs as bookmarks.
+ * @param closeSyncedTabsUseCases Use cases for closing synced tabs.
+ * @param ioDispatcher [CoroutineContext] used for storage and network operations.
* @param collectionStorage Storage layer for interacting with collections.
* @param selectTabPosition Lambda used to scroll the tabs tray to the desired position.
* @param dismissTray Lambda used to dismiss/minimize the tabs tray.
@@ -210,6 +212,7 @@ class DefaultTabsTrayController(
private val navigationInteractor: NavigationInteractor,
private val tabsUseCases: TabsUseCases,
private val bookmarksUseCase: BookmarksUseCase,
+ private val closeSyncedTabsUseCases: CloseTabsUseCases,
private val ioDispatcher: CoroutineContext,
private val collectionStorage: TabCollectionStorage,
private val selectTabPosition: (Int, Boolean) -> Unit,
@@ -520,6 +523,12 @@ class DefaultTabsTrayController(
)
}
+ override fun handleSyncedTabClosed(deviceId: String, tab: Tab) {
+ CoroutineScope(ioDispatcher).launch {
+ closeSyncedTabsUseCases.close(deviceId, tab.active().url)
+ }
+ }
+
override fun handleTabLongClick(tab: TabSessionState): Boolean {
return if (tab.isNormalTab() && tabsTrayStore.state.mode.selectedTabs.isEmpty()) {
Collections.longPress.record(NoExtras())
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt
index fded1b9494..9086708892 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt
@@ -30,6 +30,7 @@ import mozilla.components.browser.state.selector.normalTabs
import mozilla.components.browser.state.selector.privateTabs
import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.concept.base.crash.Breadcrumb
+import mozilla.components.feature.accounts.push.CloseTabsUseCases
import mozilla.components.feature.downloads.ui.DownloadCancelDialogFragment
import mozilla.components.feature.tabs.tabstray.TabsFeature
import mozilla.components.support.base.feature.ViewBoundFeatureWrapper
@@ -181,6 +182,7 @@ class TabsTrayFragment : AppCompatDialogFragment() {
navigationInteractor = navigationInteractor,
profiler = requireComponents.core.engine.profiler,
tabsUseCases = requireComponents.useCases.tabsUseCases,
+ closeSyncedTabsUseCases = CloseTabsUseCases(requireComponents.backgroundServices.accountManager),
bookmarksUseCase = requireComponents.useCases.bookmarksUseCases,
ioDispatcher = Dispatchers.IO,
collectionStorage = requireComponents.core.tabCollectionStorage,
@@ -275,6 +277,7 @@ class TabsTrayFragment : AppCompatDialogFragment() {
onInactiveTabClick = tabsTrayInteractor::onInactiveTabClicked,
onInactiveTabClose = tabsTrayInteractor::onInactiveTabClosed,
onSyncedTabClick = tabsTrayInteractor::onSyncedTabClicked,
+ onSyncedTabClose = tabsTrayInteractor::onSyncedTabClosed,
onSaveToCollectionClick = tabsTrayInteractor::onAddSelectedTabsToCollectionClicked,
onShareSelectedTabsClick = tabsTrayInteractor::onShareSelectedTabs,
onShareAllTabsClick = {
@@ -307,6 +310,23 @@ class TabsTrayFragment : AppCompatDialogFragment() {
requireContext().settings().lastCfrShownTimeInMillis = System.currentTimeMillis()
},
onMove = tabsTrayInteractor::onTabsMove,
+ shouldShowInactiveTabsCFR = {
+ requireContext().settings().shouldShowInactiveTabsOnboardingPopup &&
+ requireContext().settings().canShowCfr
+ },
+ onInactiveTabsCFRShown = {
+ TabsTray.inactiveTabsCfrVisible.record(NoExtras())
+ },
+ onInactiveTabsCFRClick = {
+ requireContext().settings().shouldShowInactiveTabsOnboardingPopup = false
+ navigationInteractor.onTabSettingsClicked()
+ TabsTray.inactiveTabsCfrSettings.record(NoExtras())
+ onTabsTrayDismissed()
+ },
+ onInactiveTabsCFRDismiss = {
+ requireContext().settings().shouldShowInactiveTabsOnboardingPopup = false
+ TabsTray.inactiveTabsCfrDismissed.record(NoExtras())
+ },
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayInteractor.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayInteractor.kt
index b9f8bb5473..e29aafc793 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayInteractor.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayInteractor.kt
@@ -157,6 +157,10 @@ class DefaultTabsTrayInteractor(
controller.handleSyncedTabClicked(tab)
}
+ override fun onSyncedTabClosed(deviceId: String, tab: Tab) {
+ controller.handleSyncedTabClosed(deviceId, tab)
+ }
+
override fun onBackPressed(): Boolean = controller.handleBackPressed()
override fun onTabClosed(tab: TabSessionState, source: String?) {
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt
index 6980806179..945cacd5be 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/InactiveTabViewHolder.kt
@@ -60,6 +60,7 @@ class InactiveTabViewHolder(
inactiveTabs = inactiveTabs,
expanded = expanded,
showAutoCloseDialog = showAutoClosePrompt,
+ showCFR = false, // The CFR in XML is handled by [TabsTrayInactiveTabsOnboardingBinding]
onHeaderClick = { interactor.onInactiveTabsHeaderClicked(!expanded) },
onDeleteAllButtonClick = interactor::onDeleteAllInactiveTabsClicked,
onAutoCloseDismissClick = {
@@ -73,6 +74,9 @@ class InactiveTabViewHolder(
},
onTabClick = interactor::onInactiveTabClicked,
onTabCloseClick = interactor::onInactiveTabClosed,
+ onCFRShown = {},
+ onCFRClick = {},
+ onCFRDismiss = {},
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/TabsTouchHelper.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/TabsTouchHelper.kt
index b9d762f2f9..37ac921e0f 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/TabsTouchHelper.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/browser/TabsTouchHelper.kt
@@ -92,7 +92,7 @@ class TouchCallback(
val icon = recyclerView.context.getDrawableWithTint(
R.drawable.ic_delete,
- recyclerView.context.getColorFromAttr(R.attr.textWarning),
+ recyclerView.context.getColorFromAttr(R.attr.textCritical),
)!!
val background = AppCompatResources.getDrawable(
recyclerView.context,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/ext/SyncedDeviceTabs.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/ext/SyncedDeviceTabs.kt
index 39462fa9b0..c8654eac3f 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/ext/SyncedDeviceTabs.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/ext/SyncedDeviceTabs.kt
@@ -5,22 +5,41 @@
package org.mozilla.fenix.tabstray.ext
import mozilla.components.browser.storage.sync.SyncedDeviceTabs
+import mozilla.components.concept.sync.DeviceCapability
import mozilla.components.support.ktx.kotlin.trimmed
import org.mozilla.fenix.tabstray.syncedtabs.SyncedTabsListItem
+import org.mozilla.fenix.tabstray.syncedtabs.SyncedTabsListSupportedFeature
/**
* Converts a list of [SyncedDeviceTabs] into a list of [SyncedTabsListItem].
+ *
+ * @param features Supported [SyncedTabsListSupportedFeature]s.
*/
-fun List<SyncedDeviceTabs>.toComposeList(): List<SyncedTabsListItem> = asSequence().flatMap { (device, tabs) ->
- val deviceTabs = if (tabs.isEmpty()) {
- emptyList()
- } else {
- tabs.map {
- val url = it.active().url
- val titleText = it.active().title.ifEmpty { url.trimmed() }
- SyncedTabsListItem.Tab(titleText, url, it)
+fun List<SyncedDeviceTabs>.toComposeList(
+ features: Set<SyncedTabsListSupportedFeature> = emptySet(),
+): List<SyncedTabsListItem> =
+ asSequence().flatMap { (device, tabs) ->
+ val deviceTabs = if (tabs.isEmpty()) {
+ emptyList()
+ } else {
+ tabs.map {
+ val url = it.active().url
+ val titleText = it.active().title.ifEmpty { url.trimmed() }
+ SyncedTabsListItem.Tab(
+ displayTitle = titleText,
+ displayURL = url,
+ action = if (
+ features.contains(SyncedTabsListSupportedFeature.CLOSE_TABS) &&
+ device.capabilities.contains(DeviceCapability.CLOSE_TABS)
+ ) {
+ SyncedTabsListItem.Tab.Action.Close(deviceId = device.id)
+ } else {
+ SyncedTabsListItem.Tab.Action.None
+ },
+ tab = it,
+ )
+ }
}
- }
- sequenceOf(SyncedTabsListItem.DeviceSection(device.displayName, deviceTabs))
-}.toList()
+ sequenceOf(SyncedTabsListItem.DeviceSection(device.displayName, deviceTabs))
+ }.toList()
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/inactivetabs/InactiveTabs.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/inactivetabs/InactiveTabs.kt
index 27ad2c1b6c..0fbe3941f8 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/inactivetabs/InactiveTabs.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/inactivetabs/InactiveTabs.kt
@@ -6,9 +6,9 @@
package org.mozilla.fenix.tabstray.inactivetabs
-import android.content.res.Configuration
import androidx.compose.foundation.BorderStroke
import androidx.compose.foundation.background
+import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
@@ -31,14 +31,19 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.asImageBitmap
import androidx.compose.ui.graphics.painter.BitmapPainter
+import androidx.compose.ui.graphics.toArgb
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
-import androidx.compose.ui.tooling.preview.Preview
+import androidx.compose.ui.text.style.TextDecoration
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import mozilla.components.browser.state.state.ContentState
import mozilla.components.browser.state.state.TabSessionState
+import mozilla.components.compose.cfr.CFRPopup
+import mozilla.components.compose.cfr.CFRPopupLayout
+import mozilla.components.compose.cfr.CFRPopupProperties
import org.mozilla.fenix.R
+import org.mozilla.fenix.compose.annotation.LightDarkPreview
import org.mozilla.fenix.compose.button.TextButton
import org.mozilla.fenix.compose.list.ExpandableListHeader
import org.mozilla.fenix.compose.list.FaviconListItem
@@ -54,12 +59,16 @@ private val ROUNDED_CORNER_SHAPE = RoundedCornerShape(8.dp)
* @param inactiveTabs List of [TabSessionState] to display.
* @param expanded Whether to show the inactive tabs section expanded or collapsed.
* @param showAutoCloseDialog Whether to show the auto close inactive tabs dialog.
+ * @param showCFR Whether to show the CFR.
* @param onHeaderClick Called when the user clicks on the inactive tabs section header.
* @param onDeleteAllButtonClick Called when the user clicks on the delete all inactive tabs button.
* @param onAutoCloseDismissClick Called when the user clicks on the auto close dialog's dismiss button.
* @param onEnableAutoCloseClick Called when the user clicks on the auto close dialog's enable button.
* @param onTabClick Called when the user clicks on a specific inactive tab.
* @param onTabCloseClick Called when the user clicks on a specific inactive tab's close button.
+ * @param onCFRShown Invoked when the CFR is displayed.
+ * @param onCFRClick Invoked when the CFR is clicked.
+ * @param onCFRDismiss Invoked when the CFR is dismissed.
*/
@Composable
@Suppress("LongParameterList")
@@ -67,12 +76,16 @@ fun InactiveTabsList(
inactiveTabs: List<TabSessionState>,
expanded: Boolean,
showAutoCloseDialog: Boolean,
+ showCFR: Boolean,
onHeaderClick: (Boolean) -> Unit,
onDeleteAllButtonClick: () -> Unit,
onAutoCloseDismissClick: () -> Unit,
onEnableAutoCloseClick: () -> Unit,
onTabClick: (TabSessionState) -> Unit,
onTabCloseClick: (TabSessionState) -> Unit,
+ onCFRShown: () -> Unit,
+ onCFRClick: () -> Unit,
+ onCFRDismiss: () -> Unit,
) {
Card(
modifier = Modifier.padding(horizontal = 16.dp, vertical = 12.dp),
@@ -88,6 +101,10 @@ fun InactiveTabsList(
) {
InactiveTabsHeader(
expanded = expanded,
+ showCFR = showCFR,
+ onCFRShown = onCFRShown,
+ onCFRClick = onCFRClick,
+ onCFRDismiss = onCFRDismiss,
onClick = { onHeaderClick(!expanded) },
onDeleteAllClick = onDeleteAllButtonClick,
)
@@ -128,35 +145,84 @@ fun InactiveTabsList(
}
/**
- * Collapsible header for the Inactive Tabs section.
+ * Collapsible header for the Inactive Tabs section with a CFR.
*
* @param expanded Whether the section is expanded.
+ * @param showCFR Whether to show the CFR.
* @param onClick Called when the user clicks on the header.
* @param onDeleteAllClick Called when the user clicks on the delete all button.
+ * @param onCFRShown Invoked when the CFR is displayed.
+ * @param onCFRClick Invoked when the CFR is clicked.
+ * @param onCFRDismiss Invoked when the CFR is dismissed.
*/
@Composable
private fun InactiveTabsHeader(
expanded: Boolean,
+ showCFR: Boolean,
onClick: () -> Unit,
onDeleteAllClick: () -> Unit,
+ onCFRShown: () -> Unit,
+ onCFRClick: () -> Unit,
+ onCFRDismiss: () -> Unit,
) {
- ExpandableListHeader(
- headerText = stringResource(R.string.inactive_tabs_title),
- headerTextStyle = FirefoxTheme.typography.headline7,
- expanded = expanded,
- expandActionContentDescription = stringResource(R.string.inactive_tabs_expand_content_description),
- collapseActionContentDescription = stringResource(R.string.inactive_tabs_collapse_content_description),
- onClick = onClick,
+ CFRPopupLayout(
+ showCFR = showCFR,
+ properties = CFRPopupProperties(
+ popupBodyColors = listOf(
+ FirefoxTheme.colors.layerGradientEnd.toArgb(),
+ FirefoxTheme.colors.layerGradientStart.toArgb(),
+ ),
+ dismissButtonColor = FirefoxTheme.colors.iconOnColor.toArgb(),
+ indicatorDirection = CFRPopup.IndicatorDirection.UP,
+ popupVerticalOffset = (-12).dp,
+ dismissOnBackPress = true,
+ dismissOnClickOutside = false,
+ ),
+ onCFRShown = onCFRShown,
+ onDismiss = { onCFRDismiss() },
+ text = {
+ FirefoxTheme {
+ Text(
+ text = stringResource(R.string.tab_tray_inactive_onboarding_message),
+ color = FirefoxTheme.colors.textOnColorPrimary,
+ style = FirefoxTheme.typography.body2,
+ )
+ }
+ },
+ action = { dismissCFR ->
+ FirefoxTheme {
+ Text(
+ text = stringResource(R.string.tab_tray_inactive_onboarding_button_text),
+ color = FirefoxTheme.colors.textOnColorPrimary,
+ modifier = Modifier.clickable {
+ dismissCFR()
+ onCFRClick()
+ },
+ style = FirefoxTheme.typography.body2.copy(
+ textDecoration = TextDecoration.Underline,
+ ),
+ )
+ }
+ },
) {
- IconButton(
- onClick = onDeleteAllClick,
- modifier = Modifier.padding(horizontal = 4.dp),
+ ExpandableListHeader(
+ headerText = stringResource(R.string.inactive_tabs_title),
+ headerTextStyle = FirefoxTheme.typography.headline7,
+ expanded = expanded,
+ expandActionContentDescription = stringResource(R.string.inactive_tabs_expand_content_description),
+ collapseActionContentDescription = stringResource(R.string.inactive_tabs_collapse_content_description),
+ onClick = onClick,
) {
- Icon(
- painter = painterResource(R.drawable.ic_delete),
- contentDescription = stringResource(R.string.inactive_tabs_delete_all),
- tint = FirefoxTheme.colors.iconPrimary,
- )
+ IconButton(
+ onClick = onDeleteAllClick,
+ modifier = Modifier.padding(horizontal = 4.dp),
+ ) {
+ Icon(
+ painter = painterResource(R.drawable.ic_delete),
+ contentDescription = stringResource(R.string.inactive_tabs_delete_all),
+ tint = FirefoxTheme.colors.iconPrimary,
+ )
+ }
}
}
}
@@ -229,8 +295,7 @@ private fun InactiveTabsAutoClosePrompt(
}
@Composable
-@Preview(name = "Auto close dialog dark", uiMode = Configuration.UI_MODE_NIGHT_YES)
-@Preview(name = "Auto close dialog light", uiMode = Configuration.UI_MODE_NIGHT_NO)
+@LightDarkPreview
private fun InactiveTabsAutoClosePromptPreview() {
FirefoxTheme {
Box(Modifier.background(FirefoxTheme.colors.layer1)) {
@@ -243,8 +308,7 @@ private fun InactiveTabsAutoClosePromptPreview() {
}
@Composable
-@Preview(name = "Full preview dark", uiMode = Configuration.UI_MODE_NIGHT_YES)
-@Preview(name = "Full preview light", uiMode = Configuration.UI_MODE_NIGHT_NO)
+@LightDarkPreview
private fun InactiveTabsListPreview() {
var expanded by remember { mutableStateOf(true) }
var showAutoClosePrompt by remember { mutableStateOf(true) }
@@ -255,12 +319,16 @@ private fun InactiveTabsListPreview() {
inactiveTabs = generateFakeInactiveTabsList(),
expanded = expanded,
showAutoCloseDialog = showAutoClosePrompt,
+ showCFR = false,
onHeaderClick = { expanded = !expanded },
onDeleteAllButtonClick = {},
onAutoCloseDismissClick = { showAutoClosePrompt = !showAutoClosePrompt },
onEnableAutoCloseClick = { showAutoClosePrompt = !showAutoClosePrompt },
onTabClick = {},
onTabCloseClick = {},
+ onCFRShown = {},
+ onCFRClick = {},
+ onCFRDismiss = {},
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsIntegration.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsIntegration.kt
index 2bc7814e53..9dc0a2246f 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsIntegration.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsIntegration.kt
@@ -15,6 +15,7 @@ import mozilla.components.service.fxa.manager.FxaAccountManager
import mozilla.components.support.base.feature.LifecycleAwareFeature
import mozilla.components.support.base.observer.Observable
import mozilla.components.support.base.observer.ObserverRegistry
+import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.tabstray.FloatingActionButtonBinding
import org.mozilla.fenix.tabstray.TabsTrayAction
import org.mozilla.fenix.tabstray.TabsTrayStore
@@ -91,7 +92,13 @@ class SyncedTabsIntegration(
override fun displaySyncedTabs(syncedTabs: List<SyncedDeviceTabs>) {
store.dispatch(
TabsTrayAction.UpdateSyncedTabs(
- syncedTabs.toComposeList(),
+ syncedTabs.toComposeList(
+ buildSet {
+ if (context.settings().enableCloseSyncedTabs) {
+ add(SyncedTabsListSupportedFeature.CLOSE_TABS)
+ }
+ },
+ ),
),
)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabs.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsList.kt
index fe39760447..42e8799697 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabs.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsList.kt
@@ -47,17 +47,29 @@ import mozilla.components.browser.storage.sync.Tab as SyncTab
private const val EXPANDED_BY_DEFAULT = true
/**
+ * A lambda invoked when the user clicks on a synced tab in the [SyncedTabsList].
+ */
+typealias OnTabClick = (tab: SyncTab) -> Unit
+
+/**
+ * A lambda invoked when the user clicks a synced tab's close button in the [SyncedTabsList].
+ */
+typealias OnTabCloseClick = (deviceId: String, tab: SyncTab) -> Unit
+
+/**
* Top-level list UI for displaying Synced Tabs in the Tabs Tray.
*
* @param syncedTabs The tab UI items to be displayed.
* @param onTabClick The lambda for handling clicks on synced tabs.
+ * @param onTabCloseClick The lambda for handling clicks on a synced tab's close button.
*/
@SuppressWarnings("LongMethod")
@OptIn(ExperimentalFoundationApi::class)
@Composable
fun SyncedTabsList(
syncedTabs: List<SyncedTabsListItem>,
- onTabClick: (SyncTab) -> Unit,
+ onTabClick: OnTabClick,
+ onTabCloseClick: OnTabCloseClick,
) {
val listState = rememberLazyListState()
val expandedState =
@@ -86,12 +98,22 @@ fun SyncedTabsList(
if (sectionExpanded) {
if (syncedTabItem.tabs.isNotEmpty()) {
items(syncedTabItem.tabs) { syncedTab ->
- FaviconListItem(
- label = syncedTab.displayTitle,
- description = syncedTab.displayURL,
- url = syncedTab.displayURL,
- onClick = { onTabClick(syncedTab.tab) },
- )
+ when (syncedTab.action) {
+ is SyncedTabsListItem.Tab.Action.Close -> FaviconListItem(
+ label = syncedTab.displayTitle,
+ description = syncedTab.displayURL,
+ url = syncedTab.displayURL,
+ onClick = { onTabClick(syncedTab.tab) },
+ iconPainter = painterResource(R.drawable.ic_close),
+ onIconClick = { onTabCloseClick(syncedTab.action.deviceId, syncedTab.tab) },
+ )
+ is SyncedTabsListItem.Tab.Action.None -> FaviconListItem(
+ label = syncedTab.displayTitle,
+ description = syncedTab.displayURL,
+ url = syncedTab.displayURL,
+ onClick = { onTabClick(syncedTab.tab) },
+ )
+ }
}
} else {
item { SyncedTabsNoTabsItem() }
@@ -274,9 +296,9 @@ private fun SyncedTabsListPreview() {
Box(Modifier.background(FirefoxTheme.colors.layer1)) {
SyncedTabsList(
syncedTabs = getFakeSyncedTabList(),
- ) {
- println("Tab clicked")
- }
+ onTabClick = { println("Tab clicked") },
+ onTabCloseClick = { _, _ -> println("Tab closed") },
+ )
}
}
}
@@ -294,17 +316,29 @@ internal fun getFakeSyncedTabList(): List<SyncedTabsListItem> = listOf(
generateFakeTab("", "www.google.com"),
),
),
- SyncedTabsListItem.DeviceSection("Device 2", emptyList()),
+ SyncedTabsListItem.DeviceSection(
+ displayName = "Device 2",
+ tabs = listOf(
+ generateFakeTab("Firefox", "www.getfirefox.org", SyncedTabsListItem.Tab.Action.Close("device2222")),
+ generateFakeTab("Thunderbird", "www.getthunderbird.org", SyncedTabsListItem.Tab.Action.Close("device2222")),
+ ),
+ ),
+ SyncedTabsListItem.DeviceSection("Device 3", emptyList()),
SyncedTabsListItem.Error("Please re-authenticate"),
)
/**
* Helper function to create a [SyncedTabsListItem.Tab] for previewing.
*/
-private fun generateFakeTab(tabName: String, tabUrl: String): SyncedTabsListItem.Tab =
+private fun generateFakeTab(
+ tabName: String,
+ tabUrl: String,
+ action: SyncedTabsListItem.Tab.Action = SyncedTabsListItem.Tab.Action.None,
+): SyncedTabsListItem.Tab =
SyncedTabsListItem.Tab(
tabName.ifEmpty { tabUrl },
tabUrl,
+ action,
SyncTab(
history = listOf(TabEntry(tabName, tabUrl, null)),
active = 0,
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListItem.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListItem.kt
index 186d3192a4..0943187e0b 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListItem.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListItem.kt
@@ -31,13 +31,29 @@ sealed class SyncedTabsListItem {
*
* @property displayTitle The title of the tab's web page.
* @property displayURL The tab's URL up to BrowserToolbar.MAX_URI_LENGTH characters long.
+ * @property action The action button to show for this tab.
* @property tab The underlying SyncTab object passed when the tab is clicked.
*/
data class Tab(
val displayTitle: String,
val displayURL: String,
+ val action: Action,
val tab: SyncTab,
- ) : SyncedTabsListItem()
+ ) : SyncedTabsListItem() {
+ /** An action button to show for a [Tab]. */
+ sealed class Action {
+ /**
+ * An action button to close the [Tab] on the synced device.
+ *
+ * @property deviceId The ID of the device on which the [Tab] is
+ * currently open.
+ */
+ data class Close(val deviceId: String) : Action()
+
+ /** A placeholder for a [Tab] without an action button. */
+ data object None : Action()
+ }
+ }
/**
* A placeholder for a device that has no tabs synced.
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListSupportedFeature.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListSupportedFeature.kt
new file mode 100644
index 0000000000..55fac2a78f
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsListSupportedFeature.kt
@@ -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/. */
+
+package org.mozilla.fenix.tabstray.syncedtabs
+
+/**
+ * Configurable or experimental features that a [SyncedTabsList] supports.
+ */
+enum class SyncedTabsListSupportedFeature {
+ CLOSE_TABS,
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/viewholders/SyncedTabsPageViewHolder.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/viewholders/SyncedTabsPageViewHolder.kt
index 58ef98f1f1..d6f96723a4 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/viewholders/SyncedTabsPageViewHolder.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/viewholders/SyncedTabsPageViewHolder.kt
@@ -35,6 +35,7 @@ class SyncedTabsPageViewHolder(
SyncedTabsList(
syncedTabs = tabs ?: emptyList(),
onTabClick = interactor::onSyncedTabClicked,
+ onTabCloseClick = interactor::onSyncedTabClosed,
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/theme/FirefoxTheme.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/theme/FirefoxTheme.kt
index 921e989a18..02cff3042f 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/theme/FirefoxTheme.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/theme/FirefoxTheme.kt
@@ -102,19 +102,19 @@ private val darkColorPalette = FirefoxColors(
layerGradientStart = PhotonColors.Violet70,
layerGradientEnd = PhotonColors.Violet40,
layerWarning = PhotonColors.Yellow70A77,
- layerConfirmation = PhotonColors.Green80,
- layerError = PhotonColors.Pink80,
- layerInfo = PhotonColors.Blue50,
+ layerSuccess = PhotonColors.Green80,
+ layerCritical = PhotonColors.Pink80,
+ layerInformation = PhotonColors.Blue50,
layerSearch = PhotonColors.DarkGrey80,
actionPrimary = PhotonColors.Violet60,
actionPrimaryDisabled = PhotonColors.Violet60A50,
- actionSecondary = PhotonColors.LightGrey30,
+ actionSecondary = PhotonColors.DarkGrey05,
actionTertiary = PhotonColors.DarkGrey10,
actionQuarternary = PhotonColors.DarkGrey80,
actionWarning = PhotonColors.Yellow40A41,
- actionConfirmation = PhotonColors.Green70,
- actionError = PhotonColors.Pink70A69,
- actionInfo = PhotonColors.Blue60,
+ actionSuccess = PhotonColors.Green70,
+ actionCritical = PhotonColors.Pink70A69,
+ actionInformation = PhotonColors.Blue60,
formDefault = PhotonColors.LightGrey05,
formSelected = PhotonColors.Violet40,
formSurface = PhotonColors.DarkGrey05,
@@ -126,15 +126,15 @@ private val darkColorPalette = FirefoxColors(
textPrimary = PhotonColors.LightGrey05,
textSecondary = PhotonColors.LightGrey40,
textDisabled = PhotonColors.LightGrey05A40,
- textWarning = PhotonColors.Red20,
- textWarningButton = PhotonColors.Red70,
+ textCritical = PhotonColors.Red20,
+ textCriticalButton = PhotonColors.Red20,
textAccent = PhotonColors.Violet20,
textAccentDisabled = PhotonColors.Violet20A60,
textOnColorPrimary = PhotonColors.LightGrey05,
textOnColorSecondary = PhotonColors.LightGrey40,
textActionPrimary = PhotonColors.LightGrey05,
textActionPrimaryDisabled = PhotonColors.LightGrey05A40,
- textActionSecondary = PhotonColors.DarkGrey90,
+ textActionSecondary = PhotonColors.LightGrey05,
textActionTertiary = PhotonColors.LightGrey05,
textActionTertiaryActive = PhotonColors.LightGrey05,
iconPrimary = PhotonColors.LightGrey05,
@@ -146,15 +146,15 @@ private val darkColorPalette = FirefoxColors(
iconOnColorDisabled = PhotonColors.LightGrey05A40,
iconNotice = PhotonColors.Blue30,
iconButton = PhotonColors.LightGrey05,
- iconWarning = PhotonColors.Red20,
- iconWarningButton = PhotonColors.Red70,
+ iconCritical = PhotonColors.Red20,
+ iconCriticalButton = PhotonColors.Red20,
iconAccentViolet = PhotonColors.Violet20,
iconAccentBlue = PhotonColors.Blue20,
iconAccentPink = PhotonColors.Pink20,
iconAccentGreen = PhotonColors.Green20,
iconAccentYellow = PhotonColors.Yellow20,
iconActionPrimary = PhotonColors.LightGrey05,
- iconActionSecondary = PhotonColors.DarkGrey90,
+ iconActionSecondary = PhotonColors.LightGrey05,
iconActionTertiary = PhotonColors.LightGrey05,
iconGradientStart = PhotonColors.Violet20,
iconGradientEnd = PhotonColors.Blue20,
@@ -164,7 +164,7 @@ private val darkColorPalette = FirefoxColors(
borderFormDefault = PhotonColors.LightGrey05,
borderAccent = PhotonColors.Violet40,
borderDisabled = PhotonColors.LightGrey05A40,
- borderWarning = PhotonColors.Red40,
+ borderCritical = PhotonColors.Red20,
borderToolbarDivider = PhotonColors.DarkGrey60,
)
@@ -182,9 +182,9 @@ private val lightColorPalette = FirefoxColors(
layerGradientStart = PhotonColors.Violet70,
layerGradientEnd = PhotonColors.Violet40,
layerWarning = PhotonColors.Yellow20,
- layerConfirmation = PhotonColors.Green20,
- layerError = PhotonColors.Red10,
- layerInfo = PhotonColors.Blue50A44,
+ layerSuccess = PhotonColors.Green20,
+ layerCritical = PhotonColors.Red10,
+ layerInformation = PhotonColors.Blue50A44,
layerSearch = PhotonColors.LightGrey30,
actionPrimary = PhotonColors.Ink20,
actionPrimaryDisabled = PhotonColors.Ink20A50,
@@ -192,9 +192,9 @@ private val lightColorPalette = FirefoxColors(
actionTertiary = PhotonColors.LightGrey40,
actionQuarternary = PhotonColors.LightGrey10,
actionWarning = PhotonColors.Yellow60A40,
- actionConfirmation = PhotonColors.Green60,
- actionError = PhotonColors.Red30,
- actionInfo = PhotonColors.Blue50,
+ actionSuccess = PhotonColors.Green60,
+ actionCritical = PhotonColors.Red30,
+ actionInformation = PhotonColors.Blue50,
formDefault = PhotonColors.DarkGrey90,
formSelected = PhotonColors.Ink20,
formSurface = PhotonColors.LightGrey50,
@@ -206,8 +206,8 @@ private val lightColorPalette = FirefoxColors(
textPrimary = PhotonColors.DarkGrey90,
textSecondary = PhotonColors.DarkGrey05,
textDisabled = PhotonColors.DarkGrey90A40,
- textWarning = PhotonColors.Red70,
- textWarningButton = PhotonColors.Red70,
+ textCritical = PhotonColors.Red70,
+ textCriticalButton = PhotonColors.Red70,
textAccent = PhotonColors.Violet70,
textAccentDisabled = PhotonColors.Violet70A80,
textOnColorPrimary = PhotonColors.LightGrey05,
@@ -226,9 +226,9 @@ private val lightColorPalette = FirefoxColors(
iconOnColorDisabled = PhotonColors.LightGrey05A40,
iconNotice = PhotonColors.Blue30,
iconButton = PhotonColors.Ink20,
- iconWarning = PhotonColors.Red70,
- iconWarningButton = PhotonColors.Red70,
- iconAccentViolet = PhotonColors.Violet60,
+ iconCritical = PhotonColors.Red70,
+ iconCriticalButton = PhotonColors.Red70,
+ iconAccentViolet = PhotonColors.Violet70,
iconAccentBlue = PhotonColors.Blue60,
iconAccentPink = PhotonColors.Pink60,
iconAccentGreen = PhotonColors.Green60,
@@ -244,15 +244,16 @@ private val lightColorPalette = FirefoxColors(
borderFormDefault = PhotonColors.DarkGrey90,
borderAccent = PhotonColors.Ink20,
borderDisabled = PhotonColors.DarkGrey90A40,
- borderWarning = PhotonColors.Red70,
+ borderCritical = PhotonColors.Red70,
borderToolbarDivider = PhotonColors.LightGrey10,
)
private val privateColorPalette = darkColorPalette.copy(
- layer1 = PhotonColors.Ink50,
- layer2 = PhotonColors.Ink50,
+ layer1 = PhotonColors.Violet90,
+ layer2 = PhotonColors.Violet90,
layer3 = PhotonColors.Ink90,
layerSearch = PhotonColors.Ink90,
+ borderPrimary = PhotonColors.Ink05,
borderSecondary = PhotonColors.Ink10,
borderToolbarDivider = PhotonColors.Violet80,
)
@@ -276,9 +277,9 @@ class FirefoxColors(
layerGradientStart: Color,
layerGradientEnd: Color,
layerWarning: Color,
- layerConfirmation: Color,
- layerError: Color,
- layerInfo: Color,
+ layerSuccess: Color,
+ layerCritical: Color,
+ layerInformation: Color,
layerSearch: Color,
actionPrimary: Color,
actionPrimaryDisabled: Color,
@@ -286,9 +287,9 @@ class FirefoxColors(
actionTertiary: Color,
actionQuarternary: Color,
actionWarning: Color,
- actionConfirmation: Color,
- actionError: Color,
- actionInfo: Color,
+ actionSuccess: Color,
+ actionCritical: Color,
+ actionInformation: Color,
formDefault: Color,
formSelected: Color,
formSurface: Color,
@@ -300,8 +301,8 @@ class FirefoxColors(
textPrimary: Color,
textSecondary: Color,
textDisabled: Color,
- textWarning: Color,
- textWarningButton: Color,
+ textCritical: Color,
+ textCriticalButton: Color,
textAccent: Color,
textAccentDisabled: Color,
textOnColorPrimary: Color,
@@ -320,8 +321,8 @@ class FirefoxColors(
iconOnColorDisabled: Color,
iconNotice: Color,
iconButton: Color,
- iconWarning: Color,
- iconWarningButton: Color,
+ iconCritical: Color,
+ iconCriticalButton: Color,
iconAccentViolet: Color,
iconAccentBlue: Color,
iconAccentPink: Color,
@@ -338,7 +339,7 @@ class FirefoxColors(
borderFormDefault: Color,
borderAccent: Color,
borderDisabled: Color,
- borderWarning: Color,
+ borderCritical: Color,
borderToolbarDivider: Color,
) {
// Layers
@@ -395,15 +396,15 @@ class FirefoxColors(
private set
// Confirmation background
- var layerConfirmation by mutableStateOf(layerConfirmation)
+ var layerSuccess by mutableStateOf(layerSuccess)
private set
// Error Background
- var layerError by mutableStateOf(layerError)
+ var layerCritical by mutableStateOf(layerCritical)
private set
// Info background
- var layerInfo by mutableStateOf(layerInfo)
+ var layerInformation by mutableStateOf(layerInformation)
private set
// Search
@@ -437,15 +438,15 @@ class FirefoxColors(
private set
// Confirmation button
- var actionConfirmation by mutableStateOf(actionConfirmation)
+ var actionSuccess by mutableStateOf(actionSuccess)
private set
// Error button
- var actionError by mutableStateOf(actionError)
+ var actionCritical by mutableStateOf(actionCritical)
private set
// Info button
- var actionInfo by mutableStateOf(actionInfo)
+ var actionInformation by mutableStateOf(actionInformation)
private set
// Checkbox default, Radio button default
@@ -495,11 +496,11 @@ class FirefoxColors(
private set
// Warning text
- var textWarning by mutableStateOf(textWarning)
+ var textCritical by mutableStateOf(textCritical)
private set
// Warning text on Secondary button
- var textWarningButton by mutableStateOf(textWarningButton)
+ var textCriticalButton by mutableStateOf(textCriticalButton)
private set
// Small heading, Text link
@@ -575,11 +576,11 @@ class FirefoxColors(
// Icon button
var iconButton by mutableStateOf(iconButton)
private set
- var iconWarning by mutableStateOf(iconWarning)
+ var iconCritical by mutableStateOf(iconCritical)
private set
// Warning icon on Secondary button
- var iconWarningButton by mutableStateOf(iconWarningButton)
+ var iconCriticalButton by mutableStateOf(iconCriticalButton)
private set
var iconAccentViolet by mutableStateOf(iconAccentViolet)
private set
@@ -638,7 +639,7 @@ class FirefoxColors(
private set
// Form parts
- var borderWarning by mutableStateOf(borderWarning)
+ var borderCritical by mutableStateOf(borderCritical)
private set
// Toolbar divider
@@ -663,9 +664,9 @@ class FirefoxColors(
layerGradientStart = other.layerGradientStart
layerGradientEnd = other.layerGradientEnd
layerWarning = other.layerWarning
- layerConfirmation = other.layerConfirmation
- layerError = other.layerError
- layerInfo = other.layerInfo
+ layerSuccess = other.layerSuccess
+ layerCritical = other.layerCritical
+ layerInformation = other.layerInformation
layerSearch = other.layerSearch
actionPrimary = other.actionPrimary
actionPrimaryDisabled = other.actionPrimaryDisabled
@@ -673,9 +674,9 @@ class FirefoxColors(
actionTertiary = other.actionTertiary
actionQuarternary = other.actionQuarternary
actionWarning = other.actionWarning
- actionConfirmation = other.actionConfirmation
- actionError = other.actionError
- actionInfo = other.actionInfo
+ actionSuccess = other.actionSuccess
+ actionCritical = other.actionCritical
+ actionInformation = other.actionInformation
formDefault = other.formDefault
formSelected = other.formSelected
formSurface = other.formSurface
@@ -687,8 +688,8 @@ class FirefoxColors(
textPrimary = other.textPrimary
textSecondary = other.textSecondary
textDisabled = other.textDisabled
- textWarning = other.textWarning
- textWarningButton = other.textWarningButton
+ textCritical = other.textCritical
+ textCriticalButton = other.textCriticalButton
textAccent = other.textAccent
textAccentDisabled = other.textAccentDisabled
textOnColorPrimary = other.textOnColorPrimary
@@ -707,8 +708,8 @@ class FirefoxColors(
iconOnColorDisabled = other.iconOnColorDisabled
iconNotice = other.iconNotice
iconButton = other.iconButton
- iconWarning = other.iconWarning
- iconWarningButton = other.iconWarningButton
+ iconCritical = other.iconCritical
+ iconCriticalButton = other.iconCriticalButton
iconAccentViolet = other.iconAccentViolet
iconAccentBlue = other.iconAccentBlue
iconAccentPink = other.iconAccentPink
@@ -725,7 +726,7 @@ class FirefoxColors(
borderFormDefault = other.borderFormDefault
borderAccent = other.borderAccent
borderDisabled = other.borderDisabled
- borderWarning = other.borderWarning
+ borderCritical = other.borderCritical
borderToolbarDivider = other.borderToolbarDivider
}
@@ -747,9 +748,9 @@ class FirefoxColors(
layerGradientStart: Color = this.layerGradientStart,
layerGradientEnd: Color = this.layerGradientEnd,
layerWarning: Color = this.layerWarning,
- layerConfirmation: Color = this.layerConfirmation,
- layerError: Color = this.layerError,
- layerInfo: Color = this.layerInfo,
+ layerSuccess: Color = this.layerSuccess,
+ layerCritical: Color = this.layerCritical,
+ layerInformation: Color = this.layerInformation,
layerSearch: Color = this.layerSearch,
actionPrimary: Color = this.actionPrimary,
actionPrimaryDisabled: Color = this.actionPrimaryDisabled,
@@ -757,9 +758,9 @@ class FirefoxColors(
actionTertiary: Color = this.actionTertiary,
actionQuarternary: Color = this.actionQuarternary,
actionWarning: Color = this.actionWarning,
- actionConfirmation: Color = this.actionConfirmation,
- actionError: Color = this.actionError,
- actionInfo: Color = this.actionInfo,
+ actionSuccess: Color = this.actionSuccess,
+ actionCritical: Color = this.actionCritical,
+ actionInformation: Color = this.actionInformation,
formDefault: Color = this.formDefault,
formSelected: Color = this.formSelected,
formSurface: Color = this.formSurface,
@@ -771,8 +772,8 @@ class FirefoxColors(
textPrimary: Color = this.textPrimary,
textSecondary: Color = this.textSecondary,
textDisabled: Color = this.textDisabled,
- textWarning: Color = this.textWarning,
- textWarningButton: Color = this.textWarningButton,
+ textCritical: Color = this.textCritical,
+ textCriticalButton: Color = this.textCriticalButton,
textAccent: Color = this.textAccent,
textAccentDisabled: Color = this.textAccentDisabled,
textOnColorPrimary: Color = this.textOnColorPrimary,
@@ -791,8 +792,8 @@ class FirefoxColors(
iconOnColorDisabled: Color = this.iconOnColorDisabled,
iconNotice: Color = this.iconNotice,
iconButton: Color = this.iconButton,
- iconWarning: Color = this.iconWarning,
- iconWarningButton: Color = this.iconWarningButton,
+ iconCritical: Color = this.iconCritical,
+ iconCriticalButton: Color = this.iconCriticalButton,
iconAccentViolet: Color = this.iconAccentViolet,
iconAccentBlue: Color = this.iconAccentBlue,
iconAccentPink: Color = this.iconAccentPink,
@@ -809,7 +810,7 @@ class FirefoxColors(
borderFormDefault: Color = this.borderFormDefault,
borderAccent: Color = this.borderAccent,
borderDisabled: Color = this.borderDisabled,
- borderWarning: Color = this.borderWarning,
+ borderWarning: Color = this.borderCritical,
borderToolbarDivider: Color = this.borderToolbarDivider,
): FirefoxColors = FirefoxColors(
layer1 = layer1,
@@ -825,9 +826,9 @@ class FirefoxColors(
layerGradientStart = layerGradientStart,
layerGradientEnd = layerGradientEnd,
layerWarning = layerWarning,
- layerConfirmation = layerConfirmation,
- layerError = layerError,
- layerInfo = layerInfo,
+ layerSuccess = layerSuccess,
+ layerCritical = layerCritical,
+ layerInformation = layerInformation,
layerSearch = layerSearch,
actionPrimary = actionPrimary,
actionPrimaryDisabled = actionPrimaryDisabled,
@@ -835,9 +836,9 @@ class FirefoxColors(
actionTertiary = actionTertiary,
actionQuarternary = actionQuarternary,
actionWarning = actionWarning,
- actionConfirmation = actionConfirmation,
- actionError = actionError,
- actionInfo = actionInfo,
+ actionSuccess = actionSuccess,
+ actionCritical = actionCritical,
+ actionInformation = actionInformation,
formDefault = formDefault,
formSelected = formSelected,
formSurface = formSurface,
@@ -849,8 +850,8 @@ class FirefoxColors(
textPrimary = textPrimary,
textSecondary = textSecondary,
textDisabled = textDisabled,
- textWarning = textWarning,
- textWarningButton = textWarningButton,
+ textCritical = textCritical,
+ textCriticalButton = textCriticalButton,
textAccent = textAccent,
textAccentDisabled = textAccentDisabled,
textOnColorPrimary = textOnColorPrimary,
@@ -869,8 +870,8 @@ class FirefoxColors(
iconOnColorDisabled = iconOnColorDisabled,
iconNotice = iconNotice,
iconButton = iconButton,
- iconWarning = iconWarning,
- iconWarningButton = iconWarningButton,
+ iconCritical = iconCritical,
+ iconCriticalButton = iconCriticalButton,
iconAccentViolet = iconAccentViolet,
iconAccentBlue = iconAccentBlue,
iconAccentPink = iconAccentPink,
@@ -887,7 +888,7 @@ class FirefoxColors(
borderFormDefault = borderFormDefault,
borderAccent = borderAccent,
borderDisabled = borderDisabled,
- borderWarning = borderWarning,
+ borderCritical = borderWarning,
borderToolbarDivider = borderToolbarDivider,
)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/DownloadIndicator.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/DownloadIndicator.kt
index 952727fe85..89c9cb47dc 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/DownloadIndicator.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/DownloadIndicator.kt
@@ -14,6 +14,9 @@ import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.layout.size
+import androidx.compose.foundation.layout.wrapContentSize
+import androidx.compose.material.ButtonDefaults
import androidx.compose.material.Icon
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
@@ -26,7 +29,6 @@ import androidx.compose.ui.res.stringResource
import androidx.compose.ui.semantics.Role
import androidx.compose.ui.semantics.clearAndSetSemantics
import androidx.compose.ui.semantics.contentDescription
-import androidx.compose.ui.semantics.disabled
import androidx.compose.ui.semantics.role
import androidx.compose.ui.unit.dp
import org.mozilla.fenix.R
@@ -87,15 +89,15 @@ fun DownloadIndicator(
modifier = modifier.then(
Modifier
.clearAndSetSemantics {
- disabled()
role = Role.Button
contentDescription?.let { this.contentDescription = contentDescription }
- },
+ }
+ .wrapContentSize(),
),
- enabled = false,
icon = icon,
iconModifier = Modifier
- .rotate(rotationAnimation()),
+ .rotate(rotationAnimation())
+ .size(ButtonDefaults.IconSize),
onClick = {},
)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettings.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettings.kt
index d29da59cfd..9edbaef823 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettings.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettings.kt
@@ -46,6 +46,7 @@ fun TranslationSettings(
onNeverTranslationClicked: () -> Unit,
onDownloadLanguageClicked: () -> Unit,
) {
+ val showHeader = showAutomaticTranslations || showNeverTranslate || showDownloads
Column(
modifier = Modifier
.background(
@@ -67,12 +68,12 @@ fun TranslationSettings(
.padding(start = 72.dp, end = 16.dp),
)
- if (item.type.hasDivider) {
+ if (item.type.hasDivider && showHeader) {
Divider(Modifier.padding(top = 8.dp, bottom = 8.dp))
}
}
- if (showAutomaticTranslations || showNeverTranslate || showDownloads) {
+ if (showHeader) {
item {
Text(
text = stringResource(
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettingsFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettingsFragment.kt
index 5fbd7a2dc1..0859c51bd3 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettingsFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationSettingsFragment.kt
@@ -17,11 +17,9 @@ import androidx.compose.ui.platform.ComposeView
import androidx.compose.ui.res.stringResource
import androidx.fragment.app.Fragment
import androidx.navigation.fragment.findNavController
-import androidx.navigation.fragment.navArgs
import mozilla.components.browser.state.action.TranslationsAction
-import mozilla.components.browser.state.selector.findTab
+import mozilla.components.browser.state.state.TranslationsBrowserState
import mozilla.components.browser.state.store.BrowserStore
-import mozilla.components.concept.engine.translate.TranslationPageSettingOperation
import mozilla.components.lib.state.ext.observeAsComposableState
import mozilla.components.support.base.feature.UserInteractionHandler
import org.mozilla.fenix.GleanMetrics.Translations
@@ -36,7 +34,6 @@ import org.mozilla.fenix.theme.FirefoxTheme
* A fragment displaying the Firefox Translation settings screen.
*/
class TranslationSettingsFragment : Fragment(), UserInteractionHandler {
- private val args by navArgs<TranslationSettingsFragmentArgs>()
private val browserStore: BrowserStore by lazy { requireComponents.core.store }
override fun onResume() {
@@ -67,7 +64,7 @@ class TranslationSettingsFragment : Fragment(), UserInteractionHandler {
Translations.action.record(Translations.ActionExtra("global_site_settings"))
findNavController().navigate(
TranslationSettingsFragmentDirections
- .actionTranslationSettingsFragmentToNeverTranslateSitePreferenceFragment(),
+ .actionTranslationSettingsToNeverTranslateSitePreference(),
)
},
onDownloadLanguageClicked = {
@@ -84,19 +81,19 @@ class TranslationSettingsFragment : Fragment(), UserInteractionHandler {
/**
* Set the switch item values.
- * The first one is based on [TranslationPageSettings.alwaysOfferPopup].
+ * The first one is based on [TranslationsBrowserState.offerTranslation].
* The second one is [DownloadLanguageFileDialog] visibility.
* This pop-up will appear if the switch item is unchecked, the phone is in saving mode, and
* doesn't have a WiFi connection.
*/
@Composable
private fun getTranslationSwitchItemList(): MutableList<TranslationSwitchItem> {
- val pageSettingsState = browserStore.observeAsComposableState { state ->
- state.findTab(args.sessionId)?.translationsState?.pageSettings
+ val offerToTranslate = browserStore.observeAsComposableState { state ->
+ state.translationEngine.offerTranslation
}.value
val translationSwitchItems = mutableListOf<TranslationSwitchItem>()
- pageSettingsState?.alwaysOfferPopup?.let {
+ offerToTranslate?.let {
translationSwitchItems.add(
TranslationSwitchItem(
type = TranslationSettingsScreenOption.OfferToTranslate(
@@ -107,10 +104,8 @@ class TranslationSettingsFragment : Fragment(), UserInteractionHandler {
isEnabled = true,
onStateChange = { _, checked ->
browserStore.dispatch(
- TranslationsAction.UpdatePageSettingAction(
- tabId = args.sessionId,
- operation = TranslationPageSettingOperation.UPDATE_ALWAYS_OFFER_POPUP,
- setting = checked,
+ TranslationsAction.SetGlobalOfferTranslateSettingAction(
+ offerTranslation = checked,
),
)
// Ensures persistence of value
@@ -141,12 +136,15 @@ class TranslationSettingsFragment : Fragment(), UserInteractionHandler {
}
override fun onBackPressed(): Boolean {
- findNavController().navigate(
- TranslationSettingsFragmentDirections.actionTranslationSettingsFragmentToTranslationsDialogFragment(
- sessionId = args.sessionId,
- translationsDialogAccessPoint = TranslationsDialogAccessPoint.TranslationsOptions,
- ),
- )
- return true
+ return if (findNavController().previousBackStackEntry?.destination?.id == R.id.browserFragment) {
+ findNavController().navigate(
+ TranslationSettingsFragmentDirections.actionTranslationSettingsFragmentToTranslationsDialogFragment(
+ translationsDialogAccessPoint = TranslationsDialogAccessPoint.TranslationsOptions,
+ ),
+ )
+ true
+ } else {
+ false
+ }
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsBottomSheet.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsBottomSheet.kt
index 8d4a74e02c..f6e27391be 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsBottomSheet.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsBottomSheet.kt
@@ -171,6 +171,7 @@ internal fun TranslationsOptionsDialog(
context: Context,
showGlobalSettings: Boolean,
translationPageSettings: TranslationPageSettings? = null,
+ offerTranslation: Boolean? = null,
initialFrom: Language? = null,
onStateChange: (TranslationSettingsOption, Boolean) -> Unit,
onBackClicked: () -> Unit,
@@ -181,6 +182,7 @@ internal fun TranslationsOptionsDialog(
showGlobalSettings = showGlobalSettings,
translationOptionsList = getTranslationSwitchItemList(
translationPageSettings = translationPageSettings,
+ offerTranslation = offerTranslation,
initialFrom = initialFrom,
context = context,
onStateChange = onStateChange,
@@ -194,6 +196,7 @@ internal fun TranslationsOptionsDialog(
@Composable
private fun getTranslationSwitchItemList(
translationPageSettings: TranslationPageSettings? = null,
+ offerTranslation: Boolean? = null,
initialFrom: Language? = null,
context: Context,
onStateChange: (TranslationSettingsOption, Boolean) -> Unit,
@@ -201,12 +204,11 @@ private fun getTranslationSwitchItemList(
val translationSwitchItemList = mutableListOf<TranslationSwitchItem>()
translationPageSettings?.let {
- val alwaysOfferPopup = translationPageSettings.alwaysOfferPopup
val alwaysTranslateLanguage = translationPageSettings.alwaysTranslateLanguage
val neverTranslateLanguage = translationPageSettings.neverTranslateLanguage
val neverTranslateSite = translationPageSettings.neverTranslateSite
- alwaysOfferPopup?.let {
+ offerTranslation?.let {
translationSwitchItemList.add(
TranslationSwitchItem(
type = TranslationPageSettingsOption.AlwaysOfferPopup(),
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBinding.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBinding.kt
index e2d25f82dc..b053e70498 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBinding.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBinding.kt
@@ -8,7 +8,7 @@ import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.distinctUntilChangedBy
import kotlinx.coroutines.flow.mapNotNull
-import mozilla.components.browser.state.selector.findTab
+import mozilla.components.browser.state.selector.selectedTab
import mozilla.components.browser.state.state.BrowserState
import mozilla.components.browser.state.state.TabSessionState
import mozilla.components.browser.state.state.TranslationsBrowserState
@@ -29,7 +29,6 @@ import java.util.Locale
class TranslationsDialogBinding(
browserStore: BrowserStore,
private val translationsDialogStore: TranslationsDialogStore,
- private val sessionId: String,
private val getTranslatedPageTitle: (localizedFrom: String?, localizedTo: String?) -> String,
) : AbstractBinding<BrowserState>(browserStore) {
@@ -42,7 +41,7 @@ class TranslationsDialogBinding(
}
// Session level flows
- val sessionFlow = flow.mapNotNull { state -> state.findTab(sessionId) }
+ val sessionFlow = flow.mapNotNull { state -> state.selectedTab }
.distinctUntilChangedBy {
it.translationsState
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBottomSheet.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBottomSheet.kt
index 2c834aea08..727034c0d8 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBottomSheet.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBottomSheet.kt
@@ -484,16 +484,18 @@ private fun TranslationErrorWarning(
when (translationError) {
is TranslationError.CouldNotTranslateError -> {
ReviewQualityCheckInfoCard(
- title = stringResource(id = R.string.translation_error_could_not_translate_warning_text),
+ description = stringResource(id = R.string.translation_error_could_not_translate_warning_text),
type = ReviewQualityCheckInfoType.Error,
+ verticalRowAlignment = Alignment.CenterVertically,
modifier = modifier,
)
}
is TranslationError.CouldNotLoadLanguagesError -> {
ReviewQualityCheckInfoCard(
- title = stringResource(id = R.string.translation_error_could_not_load_languages_warning_text),
+ description = stringResource(id = R.string.translation_error_could_not_load_languages_warning_text),
type = ReviewQualityCheckInfoType.Error,
+ verticalRowAlignment = Alignment.CenterVertically,
modifier = modifier,
)
}
@@ -501,7 +503,7 @@ private fun TranslationErrorWarning(
is TranslationError.LanguageNotSupportedError -> {
documentLangDisplayName?.let {
ReviewQualityCheckInfoCard(
- title = stringResource(
+ description = stringResource(
id = R.string.translation_error_language_not_supported_warning_text,
it,
),
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogFragment.kt
index 7e31dd594d..0d5909548e 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogFragment.kt
@@ -20,6 +20,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.layout.onGloballyPositioned
import androidx.compose.ui.platform.ComposeView
import androidx.compose.ui.platform.LocalDensity
+import androidx.compose.ui.platform.LocalView
import androidx.compose.ui.platform.ViewCompositionStrategy
import androidx.compose.ui.unit.dp
import androidx.core.os.bundleOf
@@ -28,7 +29,7 @@ import androidx.navigation.fragment.findNavController
import androidx.navigation.fragment.navArgs
import com.google.android.material.bottomsheet.BottomSheetBehavior
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
-import mozilla.components.browser.state.selector.findTab
+import mozilla.components.browser.state.selector.selectedTab
import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.concept.engine.translate.Language
import mozilla.components.concept.engine.translate.TranslationError
@@ -48,6 +49,9 @@ import org.mozilla.fenix.translations.preferences.downloadlanguages.DownloadLang
import org.mozilla.fenix.translations.preferences.downloadlanguages.DownloadLanguageFileDialogType
import org.mozilla.fenix.translations.preferences.downloadlanguages.DownloadLanguagesFeature
+// Friction should be increased, since peek height on this dialog is to fill the screen.
+private const val DIALOG_FRICTION = .65f
+
/**
* The enum is to know what bottom sheet to open.
*/
@@ -78,6 +82,7 @@ class TranslationsDialogFragment : BottomSheetDialogFragment() {
behavior = BottomSheetBehavior.from(bottomSheet)
behavior?.peekHeight = resources.displayMetrics.heightPixels
behavior?.state = BottomSheetBehavior.STATE_EXPANDED
+ behavior?.hideFriction = DIALOG_FRICTION
}
}
@@ -92,7 +97,6 @@ class TranslationsDialogFragment : BottomSheetDialogFragment() {
listOf(
TranslationsDialogMiddleware(
browserStore = browserStore,
- sessionId = args.sessionId,
settings = requireContext().settings(),
),
),
@@ -245,7 +249,6 @@ class TranslationsDialogFragment : BottomSheetDialogFragment() {
feature = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = args.sessionId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
requireContext().getString(
R.string.translations_bottom_sheet_title_translation_completed,
@@ -280,6 +283,8 @@ class TranslationsDialogFragment : BottomSheetDialogFragment() {
onSettingClicked: () -> Unit,
onShowDownloadLanguageFileDialog: () -> Unit,
) {
+ val localView = LocalView.current
+
TranslationsDialog(
translationsDialogState = translationsDialogState,
learnMoreUrl = learnMoreUrl,
@@ -295,6 +300,11 @@ class TranslationsDialogFragment : BottomSheetDialogFragment() {
},
onNegativeButtonClicked = {
if (translationsDialogState.isTranslated) {
+ localView.announceForAccessibility(
+ requireContext().getString(
+ R.string.translations_bottom_sheet_restore_accessibility_announcement,
+ ),
+ )
translationsDialogStore.dispatch(TranslationsDialogAction.RestoreTranslation)
}
dismiss()
@@ -384,12 +394,19 @@ class TranslationsDialogFragment : BottomSheetDialogFragment() {
) {
val pageSettingsState =
browserStore.observeAsComposableState { state ->
- state.findTab(args.sessionId)?.translationsState?.pageSettings
+ state.selectedTab?.translationsState?.pageSettings
}.value
+ val offerTranslation = browserStore.observeAsComposableState { state ->
+ state.translationEngine.offerTranslation
+ }.value
+
+ val localView = LocalView.current
+
TranslationsOptionsDialog(
context = requireContext(),
translationPageSettings = pageSettingsState,
+ offerTranslation = offerTranslation,
showGlobalSettings = showGlobalSettings,
initialFrom = initialFrom,
onStateChange = { type, checked ->
@@ -402,15 +419,17 @@ class TranslationsDialogFragment : BottomSheetDialogFragment() {
checked,
),
)
+
+ if (checked) {
+ localView.announceForAccessibility(type.descriptionId?.let { getString(it) })
+ }
},
onBackClicked = onBackClicked,
onTranslationSettingsClicked = {
Translations.action.record(Translations.ActionExtra("global_settings"))
findNavController().navigate(
TranslationsDialogFragmentDirections
- .actionTranslationsDialogFragmentToTranslationSettingsFragment(
- sessionId = args.sessionId,
- ),
+ .actionTranslationsDialogFragmentToTranslationSettingsFragment(),
)
},
aboutTranslationClicked = {
@@ -425,7 +444,7 @@ class TranslationsDialogFragment : BottomSheetDialogFragment() {
setFragmentResult(
TRANSLATION_IN_PROGRESS,
bundleOf(
- SESSION_ID to args.sessionId,
+ SESSION_ID to browserStore.state.selectedTab?.id,
),
)
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogMiddleware.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogMiddleware.kt
index 20bfee0d84..cb6ac2c62d 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogMiddleware.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogMiddleware.kt
@@ -5,12 +5,12 @@
package org.mozilla.fenix.translations
import mozilla.components.browser.state.action.TranslationsAction
+import mozilla.components.browser.state.selector.selectedTab
import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.concept.engine.translate.TranslationOperation
import mozilla.components.concept.engine.translate.TranslationPageSettingOperation
import mozilla.components.lib.state.Middleware
import mozilla.components.lib.state.MiddlewareContext
-import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.utils.Settings
/**
@@ -18,16 +18,17 @@ import org.mozilla.fenix.utils.Settings
*/
class TranslationsDialogMiddleware(
private val browserStore: BrowserStore,
- private val sessionId: String,
private val settings: Settings,
) : Middleware<TranslationsDialogState, TranslationsDialogAction> {
- @Suppress("LongMethod")
+ @Suppress("LongMethod", "CyclomaticComplexMethod")
override fun invoke(
context: MiddlewareContext<TranslationsDialogState, TranslationsDialogAction>,
next: (TranslationsDialogAction) -> Unit,
action: TranslationsDialogAction,
) {
+ val sessionId = browserStore.state.selectedTab?.id ?: return
+
when (action) {
is TranslationsDialogAction.InitTranslationsDialog -> {
// If the languages are missing, we should attempt to fetch the supported languages.
@@ -98,10 +99,8 @@ class TranslationsDialogMiddleware(
is TranslationPageSettingsOption.AlwaysOfferPopup -> {
// Ensures the translations engine has the correct value
browserStore.dispatch(
- TranslationsAction.UpdatePageSettingAction(
- tabId = sessionId,
- operation = TranslationPageSettingOperation.UPDATE_ALWAYS_OFFER_POPUP,
- setting = action.checkValue,
+ TranslationsAction.SetGlobalOfferTranslateSettingAction(
+ offerTranslation = action.checkValue,
),
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationItemPreference.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationItemPreference.kt
index 30bfed028e..8c32bc570c 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationItemPreference.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationItemPreference.kt
@@ -6,17 +6,20 @@ package org.mozilla.fenix.translations.preferences.automatic
import android.os.Parcelable
import kotlinx.parcelize.Parcelize
+import kotlinx.parcelize.RawValue
+import mozilla.components.concept.engine.translate.Language
+import mozilla.components.concept.engine.translate.LanguageSetting
import org.mozilla.fenix.R
/**
* AutomaticTranslationItem that will appear on Automatic Translation screen.
*
- * @property displayName The text that will appear in the list.
+ * @property language The text that will appear in the list.
* @property automaticTranslationOptionPreference The option that the user selected.
*/
@Parcelize
data class AutomaticTranslationItemPreference(
- val displayName: String,
+ val language: @RawValue Language,
val automaticTranslationOptionPreference: AutomaticTranslationOptionPreference,
) : Parcelable
@@ -65,3 +68,23 @@ sealed class AutomaticTranslationOptionPreference(
),
) : AutomaticTranslationOptionPreference(titleId = titleId, summaryId = summaryId)
}
+
+internal fun getAutomaticTranslationOptionPreference(
+ languageSetting: LanguageSetting,
+): AutomaticTranslationOptionPreference {
+ return when (languageSetting) {
+ LanguageSetting.ALWAYS -> AutomaticTranslationOptionPreference.AlwaysTranslate()
+ LanguageSetting.OFFER -> AutomaticTranslationOptionPreference.OfferToTranslate()
+ LanguageSetting.NEVER -> AutomaticTranslationOptionPreference.NeverTranslate()
+ }
+}
+
+internal fun getLanguageSetting(
+ automaticTranslationItemPreference: AutomaticTranslationOptionPreference,
+): LanguageSetting {
+ return when (automaticTranslationItemPreference) {
+ is AutomaticTranslationOptionPreference.AlwaysTranslate -> LanguageSetting.ALWAYS
+ is AutomaticTranslationOptionPreference.NeverTranslate -> LanguageSetting.NEVER
+ is AutomaticTranslationOptionPreference.OfferToTranslate -> LanguageSetting.OFFER
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreference.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreference.kt
index bbfd3d42ba..a62e6d3a36 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreference.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreference.kt
@@ -21,10 +21,12 @@ import org.mozilla.fenix.theme.FirefoxTheme
* Firefox Automatic Translation Options preference screen.
*
* @param selectedOption Selected option that will come from the translations engine.
+ * @param onItemClick Invoked when the user clicks on a [AutomaticTranslationOptionPreference] from the list.
*/
@Composable
fun AutomaticTranslationOptionsPreference(
selectedOption: AutomaticTranslationOptionPreference,
+ onItemClick: (AutomaticTranslationOptionPreference) -> Unit,
) {
val optionsList = arrayListOf(
AutomaticTranslationOptionPreference.OfferToTranslate(),
@@ -50,6 +52,7 @@ fun AutomaticTranslationOptionsPreference(
maxDescriptionLines = Int.MAX_VALUE,
onClick = {
selected.value = item
+ onItemClick(item)
},
)
}
@@ -63,6 +66,7 @@ private fun AutomaticTranslationOptionsPreview() {
FirefoxTheme {
AutomaticTranslationOptionsPreference(
selectedOption = AutomaticTranslationOptionPreference.AlwaysTranslate(),
+ onItemClick = {},
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreferenceFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreferenceFragment.kt
index b144227312..ad2dea0072 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreferenceFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationOptionsPreferenceFragment.kt
@@ -11,6 +11,9 @@ import android.view.ViewGroup
import androidx.compose.ui.platform.ComposeView
import androidx.fragment.app.Fragment
import androidx.navigation.fragment.navArgs
+import mozilla.components.browser.state.action.TranslationsAction
+import mozilla.components.browser.state.store.BrowserStore
+import org.mozilla.fenix.ext.requireComponents
import org.mozilla.fenix.ext.showToolbar
import org.mozilla.fenix.theme.FirefoxTheme
@@ -19,10 +22,11 @@ import org.mozilla.fenix.theme.FirefoxTheme
*/
class AutomaticTranslationOptionsPreferenceFragment : Fragment() {
private val args by navArgs<AutomaticTranslationOptionsPreferenceFragmentArgs>()
+ private val browserStore: BrowserStore by lazy { requireComponents.core.store }
override fun onResume() {
super.onResume()
- showToolbar(args.selectedTranslationOptionPreference.displayName)
+ args.selectedTranslationOptionPreference.language.localizedDisplayName?.let { showToolbar(it) }
}
override fun onCreateView(
@@ -34,6 +38,14 @@ class AutomaticTranslationOptionsPreferenceFragment : Fragment() {
FirefoxTheme {
AutomaticTranslationOptionsPreference(
selectedOption = args.selectedTranslationOptionPreference.automaticTranslationOptionPreference,
+ onItemClick = {
+ browserStore.dispatch(
+ TranslationsAction.UpdateLanguageSettingsAction(
+ languageCode = args.selectedTranslationOptionPreference.language.code,
+ setting = getLanguageSetting(it),
+ ),
+ )
+ },
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreference.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreference.kt
index 4ce45c4e2b..76183742c3 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreference.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreference.kt
@@ -16,6 +16,7 @@ import androidx.compose.ui.res.stringResource
import androidx.compose.ui.semantics.heading
import androidx.compose.ui.semantics.semantics
import androidx.compose.ui.unit.dp
+import mozilla.components.concept.engine.translate.Language
import org.mozilla.fenix.R
import org.mozilla.fenix.compose.annotation.LightDarkPreview
import org.mozilla.fenix.compose.list.TextListItem
@@ -58,16 +59,18 @@ fun AutomaticTranslationPreference(
) {
description = stringResource(item.automaticTranslationOptionPreference.titleId)
}
- TextListItem(
- label = item.displayName,
- description = description,
- modifier = Modifier
- .fillMaxWidth()
- .padding(start = 56.dp),
- onClick = {
- onItemClick(item)
- },
- )
+ item.language.localizedDisplayName?.let {
+ TextListItem(
+ label = it,
+ description = description,
+ modifier = Modifier
+ .fillMaxWidth()
+ .padding(start = 56.dp),
+ onClick = {
+ onItemClick(item)
+ },
+ )
+ }
}
}
}
@@ -78,25 +81,25 @@ internal fun getAutomaticTranslationListPreferences(): List<AutomaticTranslation
return mutableListOf<AutomaticTranslationItemPreference>().apply {
add(
AutomaticTranslationItemPreference(
- displayName = Locale.ENGLISH.displayLanguage,
+ language = Language(Locale.ENGLISH.toLanguageTag(), Locale.ENGLISH.displayLanguage),
automaticTranslationOptionPreference = AutomaticTranslationOptionPreference.AlwaysTranslate(),
),
)
add(
AutomaticTranslationItemPreference(
- displayName = Locale.FRENCH.displayLanguage,
+ language = Language(Locale.FRANCE.toLanguageTag(), Locale.FRANCE.displayLanguage),
automaticTranslationOptionPreference = AutomaticTranslationOptionPreference.OfferToTranslate(),
),
)
add(
AutomaticTranslationItemPreference(
- displayName = Locale.GERMAN.displayLanguage,
+ language = Language(Locale.GERMAN.toLanguageTag(), Locale.GERMAN.displayLanguage),
automaticTranslationOptionPreference = AutomaticTranslationOptionPreference.NeverTranslate(),
),
)
add(
AutomaticTranslationItemPreference(
- displayName = Locale.ITALIAN.displayLanguage,
+ language = Language(Locale.ITALIAN.toLanguageTag(), Locale.ITALIAN.displayLanguage),
automaticTranslationOptionPreference = AutomaticTranslationOptionPreference.AlwaysTranslate(),
),
)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreferenceFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreferenceFragment.kt
index 9830a17156..c2b07f98bb 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreferenceFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/automatic/AutomaticTranslationPreferenceFragment.kt
@@ -11,7 +11,13 @@ import android.view.ViewGroup
import androidx.compose.ui.platform.ComposeView
import androidx.fragment.app.Fragment
import androidx.navigation.fragment.findNavController
+import mozilla.components.browser.state.store.BrowserStore
+import mozilla.components.concept.engine.translate.LanguageSetting
+import mozilla.components.concept.engine.translate.TranslationSupport
+import mozilla.components.concept.engine.translate.findLanguage
+import mozilla.components.lib.state.ext.observeAsComposableState
import org.mozilla.fenix.R
+import org.mozilla.fenix.ext.requireComponents
import org.mozilla.fenix.ext.showToolbar
import org.mozilla.fenix.theme.FirefoxTheme
@@ -19,6 +25,8 @@ import org.mozilla.fenix.theme.FirefoxTheme
* A fragment displaying the Firefox Automatic Translation list screen.
*/
class AutomaticTranslationPreferenceFragment : Fragment() {
+ private val browserStore: BrowserStore by lazy { requireComponents.core.store }
+
override fun onResume() {
super.onResume()
showToolbar(getString(R.string.automatic_translation_toolbar_title_preference))
@@ -31,8 +39,18 @@ class AutomaticTranslationPreferenceFragment : Fragment() {
): View = ComposeView(requireContext()).apply {
setContent {
FirefoxTheme {
+ val languageSettings = browserStore.observeAsComposableState { state ->
+ state.translationEngine.languageSettings
+ }.value
+ val translationSupport = browserStore.observeAsComposableState { state ->
+ state.translationEngine.supportedLanguages
+ }.value
+
AutomaticTranslationPreference(
- automaticTranslationListPreferences = getAutomaticTranslationListPreferences(),
+ automaticTranslationListPreferences = getAutomaticTranslationListPreferences(
+ languageSettings = languageSettings,
+ translationSupport = translationSupport,
+ ),
onItemClick = {
findNavController().navigate(
AutomaticTranslationPreferenceFragmentDirections
@@ -45,4 +63,28 @@ class AutomaticTranslationPreferenceFragment : Fragment() {
}
}
}
+
+ private fun getAutomaticTranslationListPreferences(
+ languageSettings: Map<String, LanguageSetting>? = null,
+ translationSupport: TranslationSupport? = null,
+ ): List<AutomaticTranslationItemPreference> {
+ val automaticTranslationListPreferences =
+ mutableListOf<AutomaticTranslationItemPreference>()
+
+ if (translationSupport != null && languageSettings != null) {
+ languageSettings.forEach { entry ->
+ translationSupport.findLanguage(entry.key)?.let {
+ automaticTranslationListPreferences.add(
+ AutomaticTranslationItemPreference(
+ language = it,
+ automaticTranslationOptionPreference = getAutomaticTranslationOptionPreference(
+ entry.value,
+ ),
+ ),
+ )
+ }
+ }
+ }
+ return automaticTranslationListPreferences
+ }
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteDialogPreferenceFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteDialogPreferenceFragment.kt
index 20204b2afb..42caba39a5 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteDialogPreferenceFragment.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteDialogPreferenceFragment.kt
@@ -13,6 +13,9 @@ import androidx.compose.ui.platform.ComposeView
import androidx.fragment.app.DialogFragment
import androidx.navigation.fragment.findNavController
import androidx.navigation.fragment.navArgs
+import mozilla.components.browser.state.action.TranslationsAction
+import mozilla.components.browser.state.store.BrowserStore
+import org.mozilla.fenix.ext.requireComponents
import org.mozilla.fenix.theme.FirefoxTheme
/**
@@ -21,6 +24,7 @@ import org.mozilla.fenix.theme.FirefoxTheme
class NeverTranslateSiteDialogPreferenceFragment : DialogFragment() {
private val args by navArgs<NeverTranslateSiteDialogPreferenceFragmentArgs>()
+ private val browserStore: BrowserStore by lazy { requireComponents.core.store }
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog =
super.onCreateDialog(savedInstanceState).apply {
@@ -37,9 +41,18 @@ class NeverTranslateSiteDialogPreferenceFragment : DialogFragment() {
setContent {
FirefoxTheme {
NeverTranslateSiteDialogPreference(
- websiteUrl = args.websiteUrl,
- onConfirmDelete = { findNavController().popBackStack() },
- onCancel = { findNavController().popBackStack() },
+ websiteUrl = args.neverTranslateSiteUrl,
+ onConfirmDelete = {
+ browserStore.dispatch(
+ TranslationsAction.RemoveNeverTranslateSiteAction(
+ origin = args.neverTranslateSiteUrl,
+ ),
+ )
+ findNavController().popBackStack()
+ },
+ onCancel = {
+ findNavController().popBackStack()
+ },
)
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteListItemPreference.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteListItemPreference.kt
deleted file mode 100644
index 6baf2868ef..0000000000
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSiteListItemPreference.kt
+++ /dev/null
@@ -1,12 +0,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/. */
-
-package org.mozilla.fenix.translations.preferences.nevertranslatesite
-
-/**
- * NeverTranslateSiteListItemPreference that will appear on [NeverTranslateSitePreferenceFragment] screens.
- *
- * @property websiteUrl The text that will appear on the item list.
- */
-data class NeverTranslateSiteListItemPreference(val websiteUrl: String)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitePreferenceFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitePreferenceFragment.kt
deleted file mode 100644
index 473d397b86..0000000000
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitePreferenceFragment.kt
+++ /dev/null
@@ -1,48 +0,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/. */
-
-package org.mozilla.fenix.translations.preferences.nevertranslatesite
-
-import android.os.Bundle
-import android.view.LayoutInflater
-import android.view.View
-import android.view.ViewGroup
-import androidx.compose.ui.platform.ComposeView
-import androidx.fragment.app.Fragment
-import androidx.navigation.fragment.findNavController
-import org.mozilla.fenix.R
-import org.mozilla.fenix.ext.showToolbar
-import org.mozilla.fenix.theme.FirefoxTheme
-
-/**
- * A fragment displaying never translate site items list.
- */
-class NeverTranslateSitePreferenceFragment : Fragment() {
- override fun onResume() {
- super.onResume()
- showToolbar(getString(R.string.never_translate_site_toolbar_title_preference))
- }
-
- override fun onCreateView(
- inflater: LayoutInflater,
- container: ViewGroup?,
- savedInstanceState: Bundle?,
- ): View = ComposeView(requireContext()).apply {
- setContent {
- FirefoxTheme {
- NeverTranslateSitePreference(
- neverTranslateSiteListPreferences = getNeverTranslateListItemsPreference(),
- onItemClick = {
- findNavController().navigate(
- NeverTranslateSitePreferenceFragmentDirections
- .actionNeverTranslateSitePreferenceFragmentToNeverTranslateSiteDialogPreferenceFragment(
- it.websiteUrl,
- ),
- )
- },
- )
- }
- }
- }
-}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitePreference.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitesPreference.kt
index e8cf6c1a44..02215ea1fa 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitePreference.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitesPreference.kt
@@ -28,13 +28,13 @@ import org.mozilla.fenix.theme.FirefoxTheme
/**
* Never Translate Site preference screen.
*
- * @param neverTranslateSiteListPreferences List of [NeverTranslateSiteListItemPreference]s to display.
+ * @param neverTranslateSitesListPreferences List of site urls to display.
* @param onItemClick Invoked when the user clicks on the a item from the list.
*/
@Composable
-fun NeverTranslateSitePreference(
- neverTranslateSiteListPreferences: List<NeverTranslateSiteListItemPreference>,
- onItemClick: (NeverTranslateSiteListItemPreference) -> Unit,
+fun NeverTranslateSitesPreference(
+ neverTranslateSitesListPreferences: List<String>,
+ onItemClick: (String) -> Unit,
) {
Column(
modifier = Modifier
@@ -53,13 +53,13 @@ fun NeverTranslateSitePreference(
)
LazyColumn {
- items(neverTranslateSiteListPreferences) { item: NeverTranslateSiteListItemPreference ->
+ items(neverTranslateSitesListPreferences) { item: String ->
val itemContentDescription = stringResource(
id = R.string.never_translate_site_item_list_content_description_preference,
- item.websiteUrl,
+ item,
)
TextListItem(
- label = item.websiteUrl,
+ label = item,
modifier = Modifier
.padding(
start = 56.dp,
@@ -78,12 +78,10 @@ fun NeverTranslateSitePreference(
}
@Composable
-internal fun getNeverTranslateListItemsPreference(): List<NeverTranslateSiteListItemPreference> {
- return mutableListOf<NeverTranslateSiteListItemPreference>().apply {
+internal fun getNeverTranslateSitesList(): List<String> {
+ return mutableListOf<String>().apply {
add(
- NeverTranslateSiteListItemPreference(
- websiteUrl = "mozilla.org",
- ),
+ "mozilla.org",
)
}
}
@@ -92,8 +90,8 @@ internal fun getNeverTranslateListItemsPreference(): List<NeverTranslateSiteList
@LightDarkPreview
private fun NeverTranslateSitePreferencePreview() {
FirefoxTheme {
- NeverTranslateSitePreference(
- neverTranslateSiteListPreferences = getNeverTranslateListItemsPreference(),
+ NeverTranslateSitesPreference(
+ neverTranslateSitesListPreferences = getNeverTranslateSitesList(),
) {}
}
}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitesPreferenceFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitesPreferenceFragment.kt
new file mode 100644
index 0000000000..429c89f18f
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/preferences/nevertranslatesite/NeverTranslateSitesPreferenceFragment.kt
@@ -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/. */
+
+package org.mozilla.fenix.translations.preferences.nevertranslatesite
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.compose.ui.platform.ComposeView
+import androidx.fragment.app.Fragment
+import androidx.navigation.fragment.findNavController
+import mozilla.components.browser.state.store.BrowserStore
+import mozilla.components.lib.state.ext.observeAsComposableState
+import org.mozilla.fenix.R
+import org.mozilla.fenix.ext.requireComponents
+import org.mozilla.fenix.ext.showToolbar
+import org.mozilla.fenix.theme.FirefoxTheme
+
+/**
+ * A fragment displaying never translate site items list.
+ */
+class NeverTranslateSitesPreferenceFragment : Fragment() {
+
+ private val browserStore: BrowserStore by lazy { requireComponents.core.store }
+
+ override fun onResume() {
+ super.onResume()
+ showToolbar(getString(R.string.never_translate_site_toolbar_title_preference))
+ }
+
+ override fun onCreateView(
+ inflater: LayoutInflater,
+ container: ViewGroup?,
+ savedInstanceState: Bundle?,
+ ): View = ComposeView(requireContext()).apply {
+ setContent {
+ FirefoxTheme {
+ val neverTranslateSites = browserStore.observeAsComposableState { state ->
+ state.translationEngine.neverTranslateSites
+ }.value
+
+ neverTranslateSites?.let { neverTranslateSitesList ->
+ NeverTranslateSitesPreference(
+ neverTranslateSitesListPreferences = neverTranslateSitesList,
+ onItemClick = {
+ findNavController().navigate(
+ NeverTranslateSitesPreferenceFragmentDirections
+ .actionNeverTranslateSitePreferenceToNeverTranslateSiteDialogPreference(
+ neverTranslateSiteUrl = it,
+ ),
+ )
+ },
+ )
+ }
+ }
+ }
+ }
+}
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
index ebcf83e21f..5262cad451 100644
--- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
+++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
@@ -35,6 +35,7 @@ import org.mozilla.fenix.Config
import org.mozilla.fenix.FeatureFlags
import org.mozilla.fenix.R
import org.mozilla.fenix.browser.browsingmode.BrowsingMode
+import org.mozilla.fenix.browser.tabstrip.isTabStripEnabled
import org.mozilla.fenix.components.metrics.MozillaProductDetector
import org.mozilla.fenix.components.settings.counterPreference
import org.mozilla.fenix.components.settings.featureFlagPreference
@@ -862,9 +863,6 @@ class Settings(private val appContext: Context) : PreferencesHolder {
return touchExplorationIsEnabled || switchServiceIsEnabled
}
- private val isTablet: Boolean
- get() = appContext.resources.getBoolean(R.bool.tablet)
-
/**
* Indicates if the user has enabled the tab strip feature.
*/
@@ -873,9 +871,6 @@ class Settings(private val appContext: Context) : PreferencesHolder {
default = false,
)
- val isTabletAndTabStripEnabled: Boolean
- get() = isTablet && isTabStripEnabled
-
var lastKnownMode: BrowsingMode = BrowsingMode.Normal
get() {
val lastKnownModeWasPrivate = preferences.getBoolean(
@@ -944,7 +939,7 @@ class Settings(private val appContext: Context) : PreferencesHolder {
)
val toolbarPosition: ToolbarPosition
- get() = if (isTabletAndTabStripEnabled) {
+ get() = if (appContext.isTabStripEnabled()) {
ToolbarPosition.TOP
} else if (shouldUseBottomToolbar) {
ToolbarPosition.BOTTOM
@@ -1594,9 +1589,9 @@ class Settings(private val appContext: Context) : PreferencesHolder {
/**
* Indicates if the recent saved bookmarks functionality should be visible.
*/
- var showRecentBookmarksFeature by lazyFeatureFlagPreference(
- appContext.getPreferenceKey(R.string.pref_key_recent_bookmarks),
- default = { homescreenSections[HomeScreenSection.RECENTLY_SAVED] == true },
+ var showBookmarksHomeFeature by lazyFeatureFlagPreference(
+ appContext.getPreferenceKey(R.string.pref_key_customization_bookmarks),
+ default = { homescreenSections[HomeScreenSection.BOOKMARKS] == true },
featureFlag = true,
)
@@ -2005,6 +2000,12 @@ class Settings(private val appContext: Context) : PreferencesHolder {
)
/**
+ * Indicates if the feature to close synced tabs is enabled.
+ */
+ val enableCloseSyncedTabs: Boolean
+ get() = FxNimbus.features.remoteTabManagement.value().closeTabsEnabled
+
+ /**
* Returns the height of the bottom toolbar.
*
* The bottom toolbar can consist of a navigation bar,
@@ -2033,7 +2034,7 @@ class Settings(private val appContext: Context) : PreferencesHolder {
val isToolbarAtTop = toolbarPosition == ToolbarPosition.TOP
val toolbarHeight = appContext.resources.getDimensionPixelSize(R.dimen.browser_toolbar_height)
- return if (isToolbarAtTop && includeTabStrip && isTabletAndTabStripEnabled) {
+ return if (isToolbarAtTop && includeTabStrip) {
toolbarHeight + appContext.resources.getDimensionPixelSize(R.dimen.tab_strip_height)
} else if (isToolbarAtTop) {
toolbarHeight
diff --git a/mobile/android/fenix/app/src/main/res/drawable/microsurvey_success.xml b/mobile/android/fenix/app/src/main/res/drawable/microsurvey_success.xml
new file mode 100644
index 0000000000..2dc8041181
--- /dev/null
+++ b/mobile/android/fenix/app/src/main/res/drawable/microsurvey_success.xml
@@ -0,0 +1,81 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="149dp"
+ android:height="136dp"
+ android:viewportWidth="149"
+ android:viewportHeight="136">
+ <path
+ android:pathData="M29.01,94.78C27.83,93.06 29.31,87.17 29.4,86.72C29.43,86.41 30.76,79.47 30.83,79.11C30.89,78.92 34.6,71.13 37.02,67.92C39.53,64.6 43.16,61.26 46.71,59.19C53.48,55.22 60.85,52.75 68.97,52.89C70.48,52.92 74.9,53.81 75.26,52.89C75.35,52.68 73.95,49.51 73.95,49.51C73.37,47.95 72.37,46.37 72.89,44.68C73.49,42.75 75.8,40.63 77.07,39.08C79.88,35.66 79.11,33.47 79.04,29.35C78.97,25.11 80.12,20.34 80.92,16.17C81.77,11.78 86.13,-5.44 92.2,3.05C94.42,6.15 96,10.53 97.4,14.07C98.11,15.86 99.13,18.72 99.94,20.47C101.07,22.91 103.7,20.78 106.24,20.95C109.91,21.2 111.91,21.75 115.49,22.61C116.56,22.87 119.37,23.79 120.27,23.37C121.4,22.84 122.79,19.73 123.57,18.67C125.69,15.77 128.32,13.09 130.87,10.56C132.45,9 137.29,4.86 139.76,5.96C142.26,7.08 142.98,14.87 143.41,17.18C144.31,21.95 143.23,33.53 142.53,38.37C141.86,43 140.92,41.29 143.02,45.63C144.02,47.72 146.37,49.94 146.85,52.15C147.34,54.4 145.88,55.45 144.46,57.24C144.32,57.41 144.17,57.59 144.03,57.77C141.75,60.79 139.73,63.12 136.72,65.47C136.46,65.69 130.74,69.63 130.4,70.27C130.4,70.27 129.78,70.84 129.83,71.02C130.05,71.86 131.55,91.47 131.38,91.81C131.12,92.36 130.89,92.92 131.6,93.33C131.71,93.47 131.82,93.61 131.93,93.75L132.59,94.53C133.02,94.99 133.45,95.45 133.88,95.91L134.34,96.41L134.35,96.41C134.73,96.83 135.11,97.25 135.49,97.68C135.57,97.76 135.65,97.84 135.73,97.93C136.13,98.57 136.54,99.21 136.95,99.85C137.13,100.08 137.31,100.3 137.48,100.53C138.02,101.44 138.55,102.35 139.09,103.26L139.27,103.63C139.78,104.55 140.29,105.48 140.8,106.4C140.85,106.52 140.91,106.65 140.96,106.77C141.54,108.1 142.08,109.44 142.73,110.73C143.23,111.74 145.32,117.03 145.43,117.25C146.78,121.04 147.43,126.63 147.37,126.93C147.13,127.32 145.86,127.31 145.74,127.31C145.45,127.16 145.16,127.02 144.86,126.88C143.95,126.53 143.03,126.18 142.12,125.83C141.9,125.77 141.69,125.71 141.48,125.65C141.03,125.52 140.57,125.39 140.11,125.27C139.68,125.14 139.26,125.02 138.82,124.89L137.74,124.68C137.56,124.61 137.39,124.54 137.21,124.48C136.99,124.46 136.76,124.43 136.54,124.41C136.18,124.31 135.81,124.22 135.46,124.11C135.16,124.09 134.85,124.07 134.55,124.04C133.96,123.93 133.37,123.81 132.78,123.69C131.77,123.75 130.77,123.8 129.76,123.86C129.34,123.92 128.92,123.98 128.5,124.04C123.67,125.09 119.04,126.99 114.47,128.86C112.21,129.79 109.86,130.68 107.5,131.2C104.89,131.78 102.27,132.29 99.61,132.64C89.02,134.04 78.94,133.53 68.35,132.16C63.43,131.52 59.03,129.96 54.38,128.32C49.97,126.78 45.09,125.18 41.77,121.7C34.5,114.09 29.77,106.12 29.01,94.76L29.01,94.78Z"
+ android:fillColor="#FEA619"/>
+ <path
+ android:pathData="M141.57,42.25C140.83,43.32 139.26,43.75 138.24,43.4C136.95,42.95 136,42.92 135.38,41.49C134.93,40.49 135.63,38.17 134.93,37.43C134.22,36.69 132.46,37.24 131.54,36.24C130.38,34.97 129.22,33.1 129.47,31.6C130.09,27.71 134.11,17.12 134.79,15.15C135.33,13.57 136.39,9.98 137.69,8.85C141.08,5.94 141.88,11.21 142.75,13.67C144.24,17.87 144.95,28.21 141.57,42.25Z"
+ android:fillColor="#FE6D2E"/>
+ <path
+ android:pathData="M79.31,31.56C80.13,25.51 80.61,19.28 81.99,13.34C82.67,10.44 83.41,7.16 85.25,4.76C87.03,2.44 88.2,4.22 88.81,6.44C90.26,11.76 90.26,15.15 91.17,23.74C89.78,26.28 88.95,27.78 86.97,29.56C84.73,31.56 81.74,34.94 79.12,36.44C78.82,35.16 79.39,31.56 79.3,31.56H79.31Z"
+ android:fillColor="#FE6D2E"/>
+ <path
+ android:pathData="M85.42,133.72C80.63,132.59 75.65,132.78 70.78,132.01C65.74,131.21 61.2,130.46 56.38,128.74C52.09,127.22 47.43,125.97 43.66,123.32C40.64,121.2 36.93,116.88 35.61,113.45C38.29,113.94 40.36,115.4 43.18,115.7C45.73,115.97 47.88,115.94 50.36,115.21C55.69,113.65 59.66,110.51 64.23,107.46C73.96,100.94 84.22,96.12 95.98,94.9C98.9,94.59 100.45,94.43 103.02,95.77C105.76,97.2 108.07,97.55 111.13,97.34C117.22,96.92 123.35,96.77 129.43,96.24C132.84,95.95 134.08,95.73 136.01,98.74C137.59,101.2 139.05,103.72 140.42,106.29C141.71,108.7 142.98,111.13 144.14,113.6C145.24,115.94 145.82,119.65 147.37,121.62V122.58C146.25,124.12 147.11,126.43 145.09,126.81C143.17,127.18 139.39,124.8 137.42,124.36C131.57,123.03 126.87,123.54 121.22,125.41C118.6,126.27 115.99,127.24 113.42,128.25C111.04,129.19 108.91,130.53 106.4,131.09C100.75,132.37 94.93,132.43 89.29,133.71H89.05C88.08,133.19 87.11,133.25 86.15,133.71H85.42L85.42,133.72Z"
+ android:fillColor="#FE7C01"/>
+ <path
+ android:pathData="M125.07,72.66C121.55,73.24 118.08,71.95 114.64,71.42C111.08,70.87 107.45,70.95 103.87,70.74C106.41,66.51 111.35,63.65 115.18,60.73C119.05,57.78 122.9,54.61 125.71,50.59C128.55,46.51 130.01,41.71 129.64,36.74C129.48,34.65 128.05,31.34 130.01,29.71C131.67,28.34 133.35,29.51 134.16,31.13C134.7,32.19 134.67,33.43 135.27,34.54C135.8,35.52 136.57,36.45 137.22,37.35C138.93,39.73 140.77,42.12 142.25,44.65C143.57,46.9 144.68,49.4 145.83,51.74C147.21,54.57 145.66,55.64 143.82,57.96C140.57,62.08 130.44,70.6 129.99,70.69C129.61,71 130.45,71.96 129.13,72.67C128.35,73.08 125.96,72.66 125.06,72.66H125.07Z"
+ android:fillColor="#FE7C01"/>
+ <path
+ android:pathData="M95.5,10.01C96.68,12.88 97.82,15.79 99.04,18.65C99.65,20.1 100.75,21.02 101.88,21.44C103.09,21.89 104.42,20.37 105.75,20.95C100.91,22.4 98.36,23.53 96.29,21C94.01,18.2 94.87,13.32 95.14,10.04C95.26,10.03 95.38,10.02 95.5,10.01Z"
+ android:fillColor="#FE7C01"/>
+ <path
+ android:pathData="M146.4,127.91C142.78,127.43 129.88,124.14 129.5,123.85C128.79,123.3 129.16,123.12 129.03,122.24C128.65,119.76 129,117.89 127.36,115.69C124.59,111.98 119.25,110.18 114.88,109.35C111.75,108.76 112.29,108.53 110.22,106.25C108.69,104.56 106.69,103.35 104.65,102.36C102.25,101.2 99.66,99.91 97.16,99.03C94.38,98.05 91.75,98.9 89,98.49C91.25,95.39 96.22,93.28 99.66,91.79C103.16,90.26 106.37,89.3 110.52,88.41C110.85,88.33 111,87.95 110.8,87.67C109.01,85.25 104.64,80.8 97.52,79.03C97.52,79.03 87.84,77.58 69.45,86.77C70.11,84.31 76.81,77.54 78.99,75.47C85.91,68.86 87.84,68.38 86.87,66.93C86.71,66.77 77.36,55.96 77.19,55.8L73.31,45.89L73.32,44.67C73.65,44.5 77.46,44.79 79.02,45.17C79.49,45.29 86.99,49.06 89.29,50.96C90.3,51.79 94.76,54.96 95.59,56.28C98,49.51 105.64,49.73 108.06,50.08C110.17,50.39 115.87,51.8 118.06,58.27C118.2,58.7 118.69,58.9 119.09,58.68C123.53,56.16 138.08,53.54 139.15,53.38C139.39,53.38 146.69,53.43 146.78,54.34C146.9,55.5 143.02,59.17 142.33,59.92C139.33,63.18 131.08,70.08 130.92,70.08C129.82,70.27 129.56,71.15 129.47,71.77C129.47,71.77 132.85,85.32 130.92,93.06C130.92,93.06 135.12,97.26 135.27,97.42C135.27,97.42 147.63,110.98 146.41,127.91H146.4Z"
+ android:fillColor="#FEEDD3"/>
+ <path
+ android:pathData="M91.46,25.31C89.78,27.24 86.77,29.77 84.94,31.6C83.32,33.21 82.52,32.73 82.52,30.15C83.25,22.4 85.42,17.64 85.42,17.56C87.04,16.47 88.81,19.5 88.81,19.5C88.81,19.5 89.87,18.13 90.74,18.05C90.82,18.45 91.38,24.66 91.46,25.31Z"
+ android:fillColor="#FEEDD3"/>
+ <path
+ android:pathData="M146.89,127.91C145.1,128.01 140.2,125.58 138.32,125.12C135.71,124.47 133.12,123.75 130.42,123.98C130.42,123.98 124.94,124.93 122.33,125.6C119.34,126.36 109.42,131.25 107.21,131.79C102.2,132.99 97.53,133.72 92.21,133.6C92.17,133.49 100.41,128.52 104.31,125.62C106.18,124.23 108,122.71 109.54,120.95C111.31,118.93 111.08,119.69 107.24,118.58C102.3,117.23 97.29,116.1 92.36,114.74C89.26,113.88 89.79,113.88 92.51,111.42C94.09,109.98 96.57,108.07 97.66,106.68C96.14,105.88 88.09,103.68 85.18,102.92C84.86,102.84 84.75,102.44 84.97,102.2C86.03,101.07 88.47,98.48 89.23,97.83C90.1,97.08 91.33,95.86 92.21,95.48C93.66,94.99 95.53,95.08 96.57,94.99C101.5,94.6 104.61,95.2 109.52,95.81C116.63,97.26 118.49,97.4 121.82,98.53C122.17,98.64 122.46,98.25 122.25,97.95C121.22,96.53 120.1,95.15 119.1,93.72C118.83,93.33 119.21,92.82 119.66,92.96C122.66,93.88 125.61,94.84 128.51,96.08C131.57,97.39 135.58,98.91 137.82,101.46C140.04,104.01 141.3,108 142.79,111.02C144.51,114.52 148.71,127.8 146.89,127.9L146.89,127.91Z"
+ android:fillColor="#FE9A94"/>
+ <path
+ android:pathData="M130.41,91.79C128.32,90.65 120.6,85.95 118.75,84.73C115.96,82.9 114.93,78.46 112.35,76.03C109.48,73.32 105.33,73.24 102.15,70.92C99.16,68.74 96.02,64.83 95.94,60.97C98,64.03 101.16,66.92 105.86,67.48C109.24,67.88 114.26,65.68 114.95,64.99C118.33,61.61 117.78,60 118.33,59.19C119.4,57.62 127.64,55.25 132.85,54.35C134.27,54.1 144.7,52.74 145.91,53.5C147.53,54.52 144.04,57.57 143.17,58.64C140.17,62.32 130.44,69.75 129.95,71.14C129.65,71.97 133.51,92.11 130.41,91.78V91.79Z"
+ android:fillColor="#FE9A94"/>
+ <path
+ android:pathData="M129.95,29.66C130.38,27.76 131.48,21.9 132.85,20.47C133.75,21.38 134.79,24.34 134.79,24.34C135.92,24.36 137.82,21.36 138.66,21.92C140.44,23.09 140.88,29.33 140.6,31.12C140.44,32.08 139.26,37.19 138.18,37.41C137.26,37.59 135.19,35.39 134.93,34.62C132.85,28.21 133.34,27.73 129.95,29.66Z"
+ android:fillColor="#FE9A94"/>
+ <path
+ android:pathData="M91.23,25.31C89.78,27.24 87.22,30.01 86.88,29.66C86.39,29.18 88.28,25.15 88.51,24.45C89,22.92 89.96,20.9 90.75,19.5C91.72,21.08 91.23,23.47 91.23,25.31Z"
+ android:fillColor="#FE9A94"/>
+ <path
+ android:pathData="M144.95,112.95C142.22,105.54 138.07,99 132.12,93.52C132.98,86 131.4,78.57 130.27,71.13C130.78,70.79 131.36,70.45 131.87,70.03C133.4,68.73 134.85,67.32 136.45,66.1C140.29,63.17 143.41,59.54 146.41,55.82C147.4,54.6 148.05,53.13 146.94,51.32C145.36,48.77 144.1,46.01 142.74,43.33C142.53,42.92 142.26,42.34 142.4,42C143.38,39.59 143.65,37.04 144.03,34.51C144.63,30.39 145.01,26.26 144.65,22.13C144.16,16.61 143.58,11.09 141.6,5.83C141.11,4.53 140.34,3.82 139.02,4.1C138.02,4.31 136.93,4.62 136.12,5.21C132.85,7.59 129.95,10.39 127.36,13.48C124.89,16.42 122.5,19.42 119.92,22.59C113.98,21.09 107.9,19.47 101.57,20.81C99.17,14.27 96.27,8.07 92.45,2.33C91.87,1.46 90.81,0.76 89.81,0.33C88.15,-0.38 87.11,0.06 86.11,1.53C84.17,4.37 82.59,7.38 81.55,10.67C80.21,14.89 79.18,19.19 78.68,23.6C78.24,27.49 78.16,31.59 78.38,35.35C78.26,35.51 78.11,35.7 77.97,35.89C76.26,38.21 74.53,40.51 72.86,42.86C72,44.07 71.79,45.41 72.35,46.85C72.87,48.16 73.31,49.5 73.8,50.83C73.95,51.26 74.14,51.67 74.41,52.29C73.82,52.25 73.48,52.21 73.13,52.2C71.03,52.13 68.93,52.01 66.83,52.04C65.54,52.05 64.25,52.16 62.98,52.35C60.51,52.71 58.01,53.01 55.63,53.68C49.9,55.3 45.05,58.56 40.74,62.57C37.03,66.02 34.04,70.04 32.21,74.84C31.51,76.68 30.52,78.4 29.75,80.21C28.56,82.98 28.44,85.99 27.92,88.91C27.16,93.24 27.71,97.51 28.8,101.67C29.95,106.11 32,110.21 34.43,114.1C36.81,117.89 39.72,121.17 43.33,123.83C46.27,126.01 49.43,127.81 52.89,129.03C55.44,129.92 58.01,130.81 60.61,131.54C64.06,132.51 67.51,133.7 71.04,134.13C76.3,134.76 81.63,134.99 86.93,135.05C90.82,135.09 94.72,134.68 98.59,134.26C101.29,133.97 103.99,133.45 106.63,132.81C109.24,132.18 111.83,131.39 114.34,130.44C116.96,129.45 119.43,128.1 122.04,127.07C123.93,126.33 125.9,125.5 127.89,125.34C132.67,124.96 137.28,126.2 141.84,127.53C143.11,127.9 144.33,128.31 145.62,128.58C147.02,128.87 148.3,127.69 148.15,126.27C147.66,121.8 146.47,117.04 144.96,112.95H144.95ZM144.43,126.32C141.01,125.16 137.51,124.35 133.98,123.61C130.72,122.93 125.59,122.58 115.46,127.74C112.12,129.44 108.48,130.35 104.86,131.23C102.91,131.71 100.9,131.92 98.94,132.32C94.77,133.16 90.54,133.26 86.33,133.17C81.83,133.07 77.33,132.75 72.86,132.33C70.11,132.07 67.35,131.62 64.67,130.94C61.69,130.18 58.77,129.13 55.86,128.1C52.11,126.78 48.48,125.2 45.24,122.83C40.86,119.62 37.41,115.68 34.81,110.89C33.05,107.63 31.49,104.3 30.51,100.74C29.41,96.71 29.49,92.59 29.82,88.43C30.22,83.48 32.24,79.13 34.28,74.75C35.51,72.09 36.71,69.36 38.82,67.28C41.37,64.79 43.98,62.31 46.81,60.16C50.91,57.05 55.63,55.19 60.76,54.56C63.38,54.23 69.46,53.38 74.96,54.21C75.2,54.24 75.45,54.31 75.59,54.52C76.97,56.53 78.3,58.53 79.71,60.47C80.57,61.64 83.98,64.51 84.95,64.51C85.46,64.51 85.27,63.86 84.93,63.47C83.97,62.4 83.13,61.47 82.29,60.52C78.99,56.81 76.61,52.54 74.67,48.02C74.34,47.25 73.99,46.47 73.8,45.65C73.71,45.29 73.89,44.78 74.11,44.45C75.64,42.23 77.23,40.06 78.76,37.85C79.08,37.38 80.16,36.16 80.11,35.95C79.14,32.4 80.86,21.05 81.45,18.57C82.25,15.26 83.22,11.98 84.3,8.75C85.01,6.61 86.24,3.87 87.99,1.94C88.2,1.71 88.54,1.65 88.81,1.78C91.38,2.92 92.63,5.86 93.8,8.24C95.7,12.09 97.4,16.04 99.18,19.94C99.5,20.63 99.82,21.32 100.14,21.97C100.26,22.23 100.51,22.39 100.79,22.39C103.95,22.37 107.08,22.16 110.17,22.45C113.22,22.74 116.23,23.54 119.46,24.18C119.75,24.24 120.02,24.41 120.19,24.66L120.25,24.73C120.36,24.89 120.59,24.9 120.72,24.75C124.28,20.43 127.61,16.27 131.1,12.24C132.56,10.54 134.36,9.15 136.01,7.62C136.12,7.53 136.79,6.82 137.71,6.42C138.84,5.93 140.16,6.55 140.49,7.74C143.5,18.33 143.91,29.45 140.98,40.28C140.89,40.62 140.65,40.91 140.32,41.03C140.31,41.03 140.31,41.03 140.3,41.04C139.88,41.19 139.68,41.66 139.89,42.05C141.84,45.79 143.73,49.43 145.66,53.15C145.79,53.4 145.76,53.69 145.6,53.92C140.83,60.29 134.77,65.2 128.59,70.45C128.39,70.61 128.3,70.86 128.34,71.12C129.39,77.31 130.82,83.69 130.48,90.42C130.45,90.98 129.83,91.3 129.37,90.99C129.1,90.81 128.84,90.64 128.59,90.47C126.95,89.39 125.3,88.33 123.69,87.22C122.21,86.2 120.74,85.14 119.31,84.04C116.33,81.73 112.84,80.6 109.29,79.53C104.95,78.23 100.5,78.03 96.03,78.01C90.59,77.98 85.2,79 80.15,81.04C76.81,82.39 73.43,83.69 70.16,85.22C66.25,87.05 62.77,89.57 59.49,92.4C55.83,95.58 51.88,98.41 47.01,99.37C44.88,99.79 42.64,99.79 40.46,99.72C39.52,99.69 38.95,99.68 38.55,99.9C38.04,100.17 38.1,100.93 38.63,101.17C39.92,101.76 41.35,101.74 42.73,101.75C49.19,101.85 54.55,99.06 59.35,95.06C62.87,92.11 66.4,89.18 70.57,87.21C74.24,85.47 77.97,83.87 81.76,82.44C85.16,81.15 88.71,80.12 92.37,79.97C95.61,79.84 98.88,80.11 102.13,80.26C107.19,80.49 112.13,81.69 116.31,84.44C121.38,87.78 126.78,90.68 131.11,95.15C134.41,98.56 137.34,102.14 139.7,106.24C142.62,111.3 144.55,116.71 145.72,122.41C145.91,123.32 146.15,124.21 146.32,125.12C146.37,125.38 146.4,125.64 146.43,125.92C146.48,126.45 145.96,126.85 145.47,126.67C145.11,126.54 144.77,126.42 144.44,126.31L144.43,126.32Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M98.4,64.68C102.43,67.77 106.84,69.03 111.93,67.07C114.47,66.1 116.35,64.6 117.7,62.35C117.94,61.94 118.21,60.58 117.86,60.15C117.73,60.1 117.44,60.98 117.37,61.12C115.73,64.95 112.21,66.59 108.54,67.02C104.23,67.51 100.31,65.93 97.55,62.45C95.76,60.2 94.76,57.59 96.56,54.83C96.7,54.61 97.53,52.89 96.63,53.83C96.24,54.39 95.84,54.95 95.45,55.49C93.22,53.69 91.01,51.9 88.79,50.12C85.13,47.15 81.08,45.15 75.27,44.66C74.7,44.61 73.33,44.66 73.33,45.15C82.53,45.15 89.32,50.75 95.11,56.28C94.63,59.66 95.85,62.71 98.41,64.67L98.4,64.68Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M131.96,29.15C132.08,29.04 132.27,29.01 132.4,29.1C132.72,29.34 132.94,29.9 133.05,30.49C133.19,31.27 133.44,32.05 133.71,32.8C133.85,33.16 134.3,34.02 134.79,34.02C134.97,33.92 134.79,33.54 134.79,33.54C134.24,31.98 133.86,30.34 133.29,28.79C133.02,28.05 132.46,27.99 131.82,28.33C131.62,28.44 131.09,28.85 130.74,29.06C130.63,29.13 130.48,29.03 130.52,28.89C131.01,26.76 131.93,23.63 132.85,21.44C133.34,21.93 134.14,23.33 134.3,23.86C134.75,25.28 134.76,25.22 135.91,24.31C136.61,23.74 137.36,23.23 138.21,22.63C138.33,22.55 138.51,22.57 138.58,22.7C138.86,23.15 139.55,24.46 139.63,24.83C139.92,26.12 141.08,30.64 138.58,36.27C138.4,36.69 138.18,37.9 138.45,37.7C138.57,37.72 139.53,36.16 139.63,35.96C140.6,34.02 141.55,29.11 140.51,24.85C140.27,23.91 139.88,22.91 139.27,22.18C138.56,21.34 138.48,21.42 137.21,22.41C136.76,22.76 135.76,23.38 135.27,23.86C134.64,22.69 133.85,21.36 133.26,20.28C134.23,17.75 135.28,15.06 136.3,12.36C136.49,11.84 136.56,11.27 136.69,10.73C136.73,9.83 135.71,11.36 135.53,11.78C133.07,17.56 130.97,23.45 129.58,29.59C129.53,29.83 129.49,30.17 129.57,30.5C129.64,30.84 130.04,30.94 130.28,30.72C130.89,30.15 131.39,29.69 131.96,29.16L131.96,29.15Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M82.91,31.74C82.88,26.97 83.59,22.39 85.89,18.12C86.05,17.82 86.46,17.78 86.69,18.02C87.41,18.79 88.05,19.5 88.71,20.21C89.09,19.63 90.08,18.5 90.27,18.53C90.75,23.37 90.74,23.35 90.88,24.34C90.99,25.08 90.75,25.53 90.14,25.96C89.71,26.27 88.81,27.73 89.47,27.58C90.1,27.13 90.73,26.68 91.37,26.22C91.76,25.95 91.97,25.49 91.93,25.02C91.79,23.45 91.69,21.86 91.47,20.28C90.92,16.31 90.32,12.34 89.69,8.37C89.61,7.88 88.81,5.95 88.59,7.09C89.19,10.59 89.29,10.78 90.26,17.56C89.45,18.05 89.29,18.53 88.81,19.01C88.57,18.68 87.96,18.01 87.75,17.72C86.67,16.23 85.67,16.26 84.86,17.87C82.83,21.89 82.01,26.21 81.91,30.69C81.9,31.09 82.51,32.56 82.9,31.74L82.91,31.74Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M118.82,58.7C119.3,59.19 121.88,57.86 122.21,57.73C126.08,56.28 128.24,55.55 132.37,54.83C143.5,52.89 146.4,53.86 146.89,53.38C146.87,53.26 146.51,52.89 143.98,52.89C140.11,52.89 135.97,53.61 132.29,54.21C127.84,54.93 123.56,56.27 119.45,58.16C119.09,58.32 118.71,58.6 118.82,58.7Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M109.14,55.04C109.79,54.06 109.35,53.05 108.17,52.89C107.5,52.81 106.72,52.41 105.27,52.41C103.82,52.41 103.67,52.53 102.85,52.89C101.53,53.48 102.23,54.38 103.33,55.31C104.97,56.69 107.98,56.8 109.14,55.04Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M98.97,48.05C100.43,48.05 100.51,48.03 100.91,47.57C101.37,47.03 101.68,45.39 101.71,44.66C101.76,43.8 101.88,43.22 101.24,42.11C100.75,41.25 99.46,40.8 98.15,41.99C97.04,44.19 97.53,44.87 97.53,46.12C97.53,46.61 98.25,48.06 98.98,48.06L98.97,48.05Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M116.4,49.02C117.37,48.54 117.85,47.57 117.92,46.63C118,45.69 118.33,44.67 117.9,43.77C116.89,42.25 114.5,42.92 114.26,44.75C114.14,45.7 113.91,46.61 113.98,47.57C114.07,48.85 115.33,49.56 116.4,49.02Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M100.91,60.64C103.42,62.55 106.09,63.02 109.17,62.75C109.78,62.69 110.59,62.09 110.91,61.64C110.99,61.53 110.83,61.4 110.7,61.43C106.83,62.32 103.34,61.74 100.39,58.9C100.29,58.8 100.18,58.88 100.09,58.99C99.95,59.19 100.22,60.11 100.92,60.64L100.91,60.64Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M101.53,50.69C101.76,50.67 102,50.63 102.24,50.58C104.88,49.97 107.45,49.81 110.13,50.71C110.95,50.98 111.75,51.34 112.75,51.89C112.91,51.98 114.83,53.45 113.49,51.92C111.22,49.32 103.86,48.55 101.36,50.55C101.42,50.6 101.48,50.69 101.53,50.68V50.69Z"
+ android:fillColor="#000000"/>
+ <path
+ android:pathData="M30.25,21.19C32.19,21.19 34.12,21.19 36.06,21.19C43.66,23.1 50.13,24.8 55.96,30.49C61.78,36.17 64.4,43.12 65.82,50.96V56.77C63.93,64.39 62.19,70.9 56.48,76.72C50.82,82.51 43.86,85.1 36.06,86.53H30.25C22.65,84.63 16.18,82.93 10.35,77.24C4.53,71.56 1.91,64.6 0.49,56.77C0.49,54.83 0.49,52.89 0.49,50.96C2.39,43.34 4.12,36.83 9.83,31C15.5,25.22 22.45,22.63 30.25,21.19Z"
+ android:fillColor="#84D09A"/>
+ <path
+ android:pathData="M9.97,30.48C15.84,24.33 24.42,20.69 32.94,20.47C41.42,20.25 49.75,24.04 55.93,29.69C58.86,32.37 68.96,42.73 66.79,57.73C66.54,59.18 64.63,85.14 35.09,87.25C21.54,88.22 12.57,80.81 9.65,77.7C3.61,71.26 0.24,64.99 0,54.83C0.24,44.66 3.95,36.77 9.96,30.47L9.97,30.48ZM64.65,55.33C65.58,40.52 54.62,27.1 40.53,23.4C27.94,20.1 13.9,26.48 7.23,37.35C0.41,48.46 0.85,62.4 8.41,72.96C16.03,83.62 31.61,87.99 43.94,83.65C55.59,79.55 64.96,67.96 64.64,55.33H64.65Z"
+ android:fillColor="#354158"/>
+ <path
+ android:pathData="M48.64,36.92C50.58,38.86 51.26,39.57 52.6,40.93C53.57,41.9 53.97,42.73 56.39,45.39C46.22,54.83 37.03,64.51 26.87,74.43C26.82,74.43 14.69,62.32 8.72,56.28C8.72,56.2 12.25,52.65 13.9,50.98C15.09,49.79 17.19,48.05 17.19,48.05C17.19,48.05 21.28,52.29 22.67,53.73C23.44,54.52 26.87,58.22 26.87,58.22C26.87,58.22 31.23,53.83 32.13,52.96C33.97,51.18 35.8,49.39 37.62,47.58C41.25,43.99 45.08,40.59 48.64,36.92Z"
+ android:fillColor="#E5FEEC"/>
+</vector>
diff --git a/mobile/android/fenix/app/src/main/res/layout/fragment_address_editor.xml b/mobile/android/fenix/app/src/main/res/layout/fragment_address_editor.xml
index 4f6e4e14d7..2b02b16a4f 100644
--- a/mobile/android/fenix/app/src/main/res/layout/fragment_address_editor.xml
+++ b/mobile/android/fenix/app/src/main/res/layout/fragment_address_editor.xml
@@ -354,7 +354,7 @@
android:text="@string/addressess_delete_address_button"
android:textAlignment="center"
android:textAllCaps="false"
- android:textColor="@color/fx_mobile_text_color_warning"
+ android:textColor="@color/fx_mobile_text_color_critical"
android:visibility="gone"
app:layout_constraintTop_toBottomOf="@+id/email_layout"
app:layout_constraintStart_toStartOf="parent" />
diff --git a/mobile/android/fenix/app/src/main/res/layout/fragment_browser.xml b/mobile/android/fenix/app/src/main/res/layout/fragment_browser.xml
index b61d82c1b9..43794b80d5 100644
--- a/mobile/android/fenix/app/src/main/res/layout/fragment_browser.xml
+++ b/mobile/android/fenix/app/src/main/res/layout/fragment_browser.xml
@@ -45,7 +45,7 @@
android:clickable="true"
android:focusable="true"
android:visibility="gone"
- app:findInPageNoMatchesTextColor="?attr/textWarning"
+ app:findInPageNoMatchesTextColor="?attr/textCritical"
app:findInPageButtonsTint="?attr/textPrimary"
app:findInPageResultCountTextColor="?attr/textPrimary" />
@@ -78,6 +78,8 @@
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:visibility="gone"
+ android:clickable="true"
+ android:focusable="true"
android:elevation="@dimen/browser_fragment_toolbar_elevation"/>
<FrameLayout
diff --git a/mobile/android/fenix/app/src/main/res/layout/fragment_credit_card_editor.xml b/mobile/android/fenix/app/src/main/res/layout/fragment_credit_card_editor.xml
index 76211b90b2..1c22e91ec9 100644
--- a/mobile/android/fenix/app/src/main/res/layout/fragment_credit_card_editor.xml
+++ b/mobile/android/fenix/app/src/main/res/layout/fragment_credit_card_editor.xml
@@ -180,7 +180,7 @@
android:text="@string/credit_cards_delete_card_button"
android:textAlignment="center"
android:textAllCaps="false"
- android:textColor="@color/fx_mobile_text_color_warning"
+ android:textColor="@color/fx_mobile_text_color_critical"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
diff --git a/mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml b/mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml
index f33313ff0d..1e59de2f0b 100644
--- a/mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml
+++ b/mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml
@@ -119,6 +119,14 @@
android:id="@+id/action_global_addonsManagementFragment"
app:destination="@id/addons_management_graph" />
<action
+ android:id="@+id/action_loginsListFragment"
+ app:destination="@id/savedLogins"
+ app:enterAnim="@anim/slide_in_right"
+ app:exitAnim="@anim/slide_out_left"
+ app:popEnterAnim="@anim/slide_in_left"
+ app:popExitAnim="@anim/slide_out_right" />
+
+ <action
android:id="@+id/action_global_trackingProtectionFragment"
app:destination="@id/trackingProtectionFragment" />
<action
@@ -208,6 +216,13 @@
android:name="scrollToCollection"
android:defaultValue="false"
app:argType="boolean" />
+ <action
+ android:id="@+id/action_homeFragment_to_loginsListFragment"
+ app:destination="@id/savedLogins"
+ app:enterAnim="@anim/slide_in_right"
+ app:exitAnim="@anim/slide_out_left"
+ app:popEnterAnim="@anim/slide_in_left"
+ app:popExitAnim="@anim/slide_out_right" />
</fragment>
<dialog
@@ -304,7 +319,14 @@
app:destination="@id/reviewQualityCheckFragment" />
<action
android:id="@+id/action_browserFragment_to_translationsDialogFragment"
- app:destination="@id/translations_graph" />
+ app:destination="@id/translationsDialogFragment" />
+ <action
+ android:id="@+id/action_loginsListFragment"
+ app:destination="@id/savedLogins"
+ app:enterAnim="@anim/slide_in_right"
+ app:exitAnim="@anim/slide_out_left"
+ app:popEnterAnim="@anim/slide_in_left"
+ app:popExitAnim="@anim/slide_out_right" />
</fragment>
<fragment
@@ -616,6 +638,13 @@
app:popEnterAnim="@anim/slide_in_left"
app:popExitAnim="@anim/slide_out_right" />
<action
+ android:id="@+id/action_settingsFragment_to_translationsSettingsFragment"
+ app:destination="@id/translations_settings_graph"
+ app:enterAnim="@anim/slide_in_right"
+ app:exitAnim="@anim/slide_out_left"
+ app:popEnterAnim="@anim/slide_in_left"
+ app:popExitAnim="@anim/slide_out_right" />
+ <action
android:id="@+id/action_settingsFragment_to_addonsFragment"
app:destination="@id/addons_management_graph"
app:enterAnim="@anim/slide_in_right"
@@ -1422,33 +1451,24 @@
</fragment>
</navigation>
- <navigation
- android:id="@+id/translations_graph"
- app:startDestination="@id/translationsDialogFragment">
+ <dialog
+ android:id="@+id/translationsDialogFragment"
+ android:name="org.mozilla.fenix.translations.TranslationsDialogFragment">
<argument
- android:name="sessionId"
- app:argType="string"
- app:nullable="true" />
- <dialog
- android:id="@+id/translationsDialogFragment"
- android:name="org.mozilla.fenix.translations.TranslationsDialogFragment">
- <argument
- android:name="sessionId"
- app:argType="string" />
- <argument
- android:name="translationsDialogAccessPoint"
- android:defaultValue="Translations"
- app:argType="org.mozilla.fenix.translations.TranslationsDialogAccessPoint" />
- <action
- android:id="@+id/action_translationsDialogFragment_to_translationSettingsFragment"
- app:destination="@id/translationSettingsFragment" />
- </dialog>
+ android:name="translationsDialogAccessPoint"
+ android:defaultValue="Translations"
+ app:argType="org.mozilla.fenix.translations.TranslationsDialogAccessPoint" />
+ <action
+ android:id="@+id/action_translationsDialogFragment_to_translationSettingsFragment"
+ app:destination="@id/translations_settings_graph" />
+ </dialog>
+
+ <navigation
+ android:id="@+id/translations_settings_graph"
+ app:startDestination="@id/translationSettingsFragment">
<fragment
android:id="@+id/translationSettingsFragment"
android:name="org.mozilla.fenix.translations.TranslationSettingsFragment">
- <argument
- android:name="sessionId"
- app:argType="string" />
<action
android:id="@+id/action_translationSettingsFragment_to_translationsDialogFragment"
app:destination="@id/translationsDialogFragment"
@@ -1461,7 +1481,7 @@
android:id="@+id/action_translationSettingsFragment_to_automaticTranslationPreferenceFragment"
app:destination="@id/automaticTranslationPreferenceFragment" />
<action
- android:id="@+id/action_translationSettingsFragment_to_neverTranslateSitePreferenceFragment"
+ android:id="@+id/action_translationSettings_to_neverTranslateSitePreference"
app:destination="@id/neverTranslateSitePreferenceFragment" />
</fragment>
<fragment
@@ -1480,16 +1500,16 @@
</fragment>
<fragment
android:id="@+id/neverTranslateSitePreferenceFragment"
- android:name="org.mozilla.fenix.translations.preferences.nevertranslatesite.NeverTranslateSitePreferenceFragment">
+ android:name="org.mozilla.fenix.translations.preferences.nevertranslatesite.NeverTranslateSitesPreferenceFragment">
<action
- android:id="@+id/action_neverTranslateSitePreferenceFragment_to_neverTranslateSiteDialogPreferenceFragment"
+ android:id="@+id/action_neverTranslateSitePreference_to_neverTranslateSiteDialogPreference"
app:destination="@id/neverTranslateSiteDialogPreferenceFragment" />
</fragment>
<dialog
android:id="@+id/neverTranslateSiteDialogPreferenceFragment"
android:name="org.mozilla.fenix.translations.preferences.nevertranslatesite.NeverTranslateSiteDialogPreferenceFragment">
<argument
- android:name="websiteUrl"
+ android:name="neverTranslateSiteUrl"
app:argType="string" />
</dialog>
<fragment
@@ -1519,8 +1539,18 @@
<navigation
android:id="@+id/menu_graph"
app:startDestination="@id/menuDialogFragment">
+ <argument
+ android:name="accesspoint"
+ app:argType="org.mozilla.fenix.components.menu.MenuAccessPoint" />
<dialog
android:id="@+id/menuDialogFragment"
- android:name="org.mozilla.fenix.components.menu.MenuDialogFragment" />
+ android:name="org.mozilla.fenix.components.menu.MenuDialogFragment">
+ <argument
+ android:name="accesspoint"
+ app:argType="org.mozilla.fenix.components.menu.MenuAccessPoint" />
+ <action
+ android:id="@+id/action_menuDialogFragment_to_translationsDialogFragment"
+ app:destination="@id/translationsDialogFragment" />
+ </dialog>
</navigation>
</navigation>
diff --git a/mobile/android/fenix/app/src/main/res/raw/initial_experiments.json b/mobile/android/fenix/app/src/main/res/raw/initial_experiments.json
index f0efae5b6d..d67e48ce88 100644
--- a/mobile/android/fenix/app/src/main/res/raw/initial_experiments.json
+++ b/mobile/android/fenix/app/src/main/res/raw/initial_experiments.json
@@ -68,7 +68,7 @@
"channel": "release",
"userFacingName": "Android Onboarding - Remove Sync Card",
"userFacingDescription": "Mobile Onboarding experiment",
- "isEnrollmentPaused": false,
+ "isEnrollmentPaused": true,
"isRollout": false,
"bucketConfig": {
"randomizationUnit": "nimbus_id",
@@ -160,7 +160,7 @@
],
"targeting": "((is_already_enrolled) || ((isFirstRun == 'true') && (app_version|versionCompare('126.!') >= 0) && (language in ['en'])))",
"startDate": "2024-04-30",
- "enrollmentEndDate": null,
+ "enrollmentEndDate": "2024-05-30",
"endDate": null,
"proposedDuration": 42,
"proposedEnrollment": 14,
@@ -169,111 +169,6 @@
"localizations": null,
"locales": null,
"publishedDate": "2024-04-30T20:18:06.070479Z"
- },
- {
- "schemaVersion": "1.12.0",
- "slug": "splash-screen-max-duration-test-lower-times",
- "id": "splash-screen-max-duration-test-lower-times",
- "arguments": {},
- "application": "org.mozilla.firefox",
- "appName": "fenix",
- "appId": "org.mozilla.firefox",
- "channel": "release",
- "userFacingName": "Splash screen max duration test - lower times",
- "userFacingDescription": "Testing a splashscreen on app launch.",
- "isEnrollmentPaused": true,
- "isRollout": false,
- "bucketConfig": {
- "randomizationUnit": "nimbus_id",
- "namespace": "fenix-splash-screen-release-3",
- "start": 0,
- "count": 10000,
- "total": 10000
- },
- "featureIds": [
- "splash-screen"
- ],
- "probeSets": [],
- "outcomes": [
- {
- "slug": "onboarding",
- "priority": "primary"
- },
- {
- "slug": "default-browser",
- "priority": "primary"
- }
- ],
- "branches": [
- {
- "slug": "control",
- "ratio": 1,
- "feature": {
- "featureId": "this-is-included-for-mobile-pre-96-support",
- "enabled": false,
- "value": {}
- },
- "features": [
- {
- "featureId": "splash-screen",
- "enabled": true,
- "value": {
- "enabled": true,
- "maximum_duration_ms": 0
- }
- }
- ]
- },
- {
- "slug": "treatment-a",
- "ratio": 1,
- "feature": {
- "featureId": "this-is-included-for-mobile-pre-96-support",
- "enabled": false,
- "value": {}
- },
- "features": [
- {
- "featureId": "splash-screen",
- "enabled": true,
- "value": {
- "enabled": true,
- "maximum_duration_ms": 1750
- }
- }
- ]
- },
- {
- "slug": "treatment-b",
- "ratio": 1,
- "feature": {
- "featureId": "this-is-included-for-mobile-pre-96-support",
- "enabled": false,
- "value": {}
- },
- "features": [
- {
- "featureId": "splash-screen",
- "enabled": true,
- "value": {
- "enabled": true,
- "maximum_duration_ms": 2500
- }
- }
- ]
- }
- ],
- "targeting": "((is_already_enrolled) || ((isFirstRun == 'true') && (app_version|versionCompare('124.!') >= 0) && (region in ['AD', 'AE', 'AF', 'AG', 'AI', 'AL', 'AM', 'AO', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AW', 'AX', 'AZ', 'BA', 'BB', 'BD', 'BE', 'BF', 'BG', 'BH', 'BI', 'BJ', 'BL', 'BM', 'BN', 'BO', 'BQ', 'BR', 'BS', 'BT', 'BV', 'BW', 'BY', 'BZ', 'CA', 'CC', 'CD', 'CF', 'CG', 'CH', 'CI', 'CK', 'CL', 'CM', 'CN', 'CO', 'CR', 'CU', 'CV', 'CW', 'CX', 'CY', 'CZ', 'DJ', 'DK', 'DM', 'DO', 'DZ', 'EC', 'EE', 'EG', 'EH', 'ER', 'ES', 'ET', 'FI', 'FJ', 'FK', 'FM', 'FO', 'FR', 'GA', 'GB', 'GD', 'GE', 'GF', 'GG', 'GH', 'GI', 'GL', 'GM', 'GN', 'GP', 'GQ', 'GR', 'GS', 'GT', 'GU', 'GW', 'GY', 'HK', 'HM', 'HN', 'HR', 'HT', 'HU', 'ID', 'IE', 'IL', 'IM', 'IN', 'IO', 'IQ', 'IR', 'IS', 'IT', 'JE', 'JM', 'JO', 'JP', 'KE', 'KG', 'KH', 'KI', 'KM', 'KN', 'KP', 'KR', 'KW', 'KY', 'KZ', 'LA', 'LB', 'LC', 'LI', 'LK', 'LR', 'LS', 'LT', 'LU', 'LV', 'LY', 'MA', 'MC', 'MD', 'ME', 'MF', 'MG', 'MH', 'MK', 'ML', 'MM', 'MN', 'MO', 'MP', 'MQ', 'MR', 'MS', 'MT', 'MU', 'MV', 'MW', 'MX', 'MY', 'MZ', 'NA', 'NC', 'NE', 'NF', 'NG', 'NI', 'NL', 'NO', 'NP', 'NR', 'NU', 'NZ', 'OM', 'PA', 'PE', 'PF', 'PG', 'PH', 'PK', 'PL', 'PM', 'PN', 'PR', 'PS', 'PT', 'PW', 'PY', 'QA', 'RE', 'RO', 'RS', 'RU', 'RW', 'SA', 'SB', 'SC', 'SD', 'SE', 'SG', 'SH', 'SI', 'SJ', 'SK', 'SL', 'SM', 'SN', 'SO', 'SR', 'SS', 'ST', 'SV', 'SX', 'SY', 'SZ', 'TC', 'TD', 'TF', 'TG', 'TH', 'TJ', 'TK', 'TL', 'TM', 'TN', 'TO', 'TR', 'TT', 'TV', 'TW', 'TZ', 'UA', 'UG', 'UM', 'US', 'UY', 'UZ', 'VA', 'VC', 'VE', 'VG', 'VI', 'VN', 'VU', 'WF', 'WS', 'YE', 'YT', 'ZA', 'ZM', 'ZW'])))",
- "startDate": "2024-03-13",
- "enrollmentEndDate": "2024-04-03",
- "endDate": null,
- "proposedDuration": 56,
- "proposedEnrollment": 28,
- "referenceBranch": "control",
- "featureValidationOptOut": false,
- "localizations": null,
- "locales": null,
- "publishedDate": "2024-03-13T15:04:41.938148Z"
}
]
}
diff --git a/mobile/android/fenix/app/src/main/res/values-azb/strings.xml b/mobile/android/fenix/app/src/main/res/values-azb/strings.xml
index 38bae805ff..1be1d508e8 100644
--- a/mobile/android/fenix/app/src/main/res/values-azb/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-azb/strings.xml
@@ -58,13 +58,22 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">سون ساخلانان‌لار</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">سون ساخلانان‌لار</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">بوتون ساخلانمیش بوکمارک‌لاری گؤستر</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">بوتون ساخلانمیش بوکمارک‌لاری گؤستر</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">قالدیر</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">قالدیر</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">بوکمارک‌لار</string>
+
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">بوتون بوکمارک‌لاری گؤستر</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">قالدیر</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s موزیلا طرفیندن دوزه‌دیلمیش.</string>
@@ -210,6 +219,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">تاخیلان‌لار</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">اوزانتی‌لار</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">اوزانتی‌ْ‌لار مودیریتی</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">داها چوْخ اوزانتیْ گؤر</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">حساب بیلگی‌لری</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -230,6 +243,8 @@
<string name="browser_menu_open_in_regular_tab">معمولی تاغدا آچ</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">آناصفحه‌یه آرتیر</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">آنا اکرانا آرتیر…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">قوْش</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -238,12 +253,18 @@
<string name="browser_menu_find_in_page">صفحه‌ده تاپ</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">یارپاقدا آختار…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">صفحه‌نی ترجومه ائله</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">مجموعه‌‌ده ساخلا…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">مجموعه‌ده ساخلا</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">پایلاش</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">پایلاش…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">%1$s ایله آچ</string>
@@ -287,10 +308,33 @@
The first parameter is the name of the app defined in app_name (for example: Fenix)-->
<string name="browser_menu_new_in_firefox">%1$s-دا یئنی</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">دسکتاپ سایتا گئچ</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">آلت‌لر</string>
<!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">ساخلا</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">بو صفحه‌نی بوکمارک ائله</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">بوکمارک دوز‌ه‌لیشی</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">PDF اوْلاراق ساخلا…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">اوْخوجو گؤرونوشونو آچ</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">اوْخوجو گؤرونوشونو باغلا</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">صفحه‌نی ترجومه ائله…</string>
+
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s دیلینه چئویر</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">پرینت…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">بوردا هئچ اوزانتی یوخ</string>
@@ -391,8 +435,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">فایرفاکس گیزللیک بیلدیریمی</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">گیزلیلیک بیلدیریمیزده آرتیق بیلین</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">سیزی قوروماغی سئویریک</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -605,6 +647,10 @@
<string name="preferences_account_sync_error">دؤنگلی ایدامه وئرمک اوچون یئنی‌دن باغلانین.</string>
<!-- Preference for language -->
<string name="preferences_language">دیل</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">ترجومه</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">ترجومه‌لر</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">دیتا سئچیمی</string>
<!-- Preference for data collection -->
@@ -672,8 +718,11 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">ایجازه وئریلمه‌دی</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">سایتی سیل</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">لازیم</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">گؤیوللو</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">بوتون سایتلار اوچون ایجازه وئر</string>
@@ -696,7 +745,7 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">قاباقکی تاغ‌لارا قاییت</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">سوْن بوکمارک‌لار</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">سوْن بوکمارک‌لار</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">سون باخیلان‌لار</string>
@@ -780,8 +829,6 @@
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">بوُکمارک‌لار</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">گیریش‌لر</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">رمز‌لر</string>
<!-- Preference for syncing tabs -->
@@ -810,8 +857,6 @@
The first parameter is the application name, the second is the device manufacturer name
and the third is the device model. -->
<string name="default_device_name_2">%1$s - %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">اعتباری کارتلار</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">اؤدمه آپاری‌ْلاری</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-be/strings.xml b/mobile/android/fenix/app/src/main/res/values-be/strings.xml
index af5728eb07..0c182fa6af 100644
--- a/mobile/android/fenix/app/src/main/res/values-be/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-be/strings.xml
@@ -48,12 +48,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Нядаўна захаваныя</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Нядаўна захаваныя</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Паказаць усе захаваныя закладкі</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Паказаць усе захаваныя закладкі</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Выдаліць</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Выдаліць</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Закладкі</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Паказаць усе закладкі</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Выдаліць</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s распрацаваны Mozilla.</string>
@@ -141,8 +149,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">Прыватная картка</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">Хуткі доступ да пароляў</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">Паролі</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">Хуткі доступ да пароляў</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -186,6 +196,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Дадаткі</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Пашырэнні</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Кіраваць пашырэннямі</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Адкрыйце для сябе іншыя пашырэнні</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Ваш уліковы запіс</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -204,20 +218,28 @@
<string name="browser_menu_open_in_regular_tab">Адкрыць у звычайнай картцы</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Дадаць на хатні экран</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Дадаць на хатні экран…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Усталяваць</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Сінхранізаваць ізноў</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Знайсці на старонцы</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Знайсці на старонцы…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Перакласці старонку</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Захаваць у калекцыі…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Захаваць у калекцыі</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Падзяліцца</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Падзяліцца…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Адкрыць у %1$s</string>
@@ -246,7 +268,50 @@
<string name="browser_menu_customize_home_1">Уладкаваць хатнюю старонку</string>
<!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
- <string name="browser_menu_sign_in" tools:ignore="UnusedResources">Увайсці</string>
+ <string name="browser_menu_sign_in">Увайсці</string>
+
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">Сінхранізуйце паролі, карткі і іншае</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Увайдзіце зноў, каб сінхранізаваць</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Сінхранізацыя прыпынена</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">Прыватная картка</string>
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">Паролі</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Новае ў %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Пераключыцца на версію для ПК</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Прылады</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Захаваць</string>
+
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Дадаць закладку на старонку</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Рэдагаваць закладку</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Захаваць як PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Уключыць рэжым чытання</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Выключыць рэжым чытання</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Перакласці старонку…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Перакладзена на %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Друкаваць…</string>
+
+ <!-- Extensions management fragment -->
+ <!-- Text displayed when there are no extensions to be shown -->
+ <string name="extensions_management_no_extensions">Тут няма пашырэнняў</string>
<!-- Browser Toolbar -->
<!-- Content description for the Home screen button on the browser toolbar -->
@@ -340,13 +405,13 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Паведамленне аб прыватнасці Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Даведайцеся больш у нашым паведамленні аб прыватнасці</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Нам падабаецца забяспечваць вашу бяспеку</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
Note: The word "Firefox" should NOT be translated -->
<string name="juno_onboarding_default_browser_title_nimbus_3" tools:ignore="UnusedResources">Даведайцеся, чаму мільёны людзей любяць Firefox</string>
+ <!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_title_nimbus_4" tools:ignore="UnusedResources">Бяспечнае агляданне з вялікім выбарам</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_description_nimbus_3">Наш браўзер, падтрыманы некамерцыйнай арганізацыяй, дапамагае не даваць кампаніям таемна сачыць за вамі ў сеціве.</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
@@ -549,6 +614,10 @@
<string name="preferences_account_sync_error">Падключыцеся, каб аднавіць сінхранізацыю</string>
<!-- Preference for language -->
<string name="preferences_language">Мова</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Пераклад</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Пераклады</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Выбар дадзеных</string>
<!-- Preference for data collection -->
@@ -605,6 +674,8 @@
<string name="preferences_extensions">Пашырэнні</string>
<!-- Preference for installing a local add-on -->
<string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Усталяваць дадатак з файла</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">Усталяваць пашырэнне з файла</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Абвесткі</string>
@@ -613,6 +684,14 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">Не дазволена</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Абавязкова</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Неабавязкова</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Дазволіць для ўсіх сайтаў</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
<string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Уласная калекцыя дадаткаў</string>
@@ -632,7 +711,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Пераход назад да</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Нядаўнія закладкі</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Нядаўнія закладкі</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Закладкі</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Нядаўна наведаныя</string>
@@ -684,6 +765,8 @@
<!-- Add-ons general availability nimbus message-->
<!-- Title of the Nimbus message for add-ons general availability-->
<string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">Даступныя новыя дадаткі</string>
+ <!-- Title of the Nimbus message for extension general availability-->
+ <string name="addon_ga_message_title_2" tools:ignore="UnusedResources">Даступныя новыя пашырэнні</string>
<!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
<string name="addon_ga_message_body" tools:ignore="UnusedResources">Азнаёмцеся з больш за 100 новых пашырэнняў, якія дазваляюць зрабіць Firefox вашым уласным.</string>
<!-- Button text of the Nimbus message for add-ons general availability. -->
@@ -712,8 +795,6 @@
<string name="preferences_sync_history">Гісторыю</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Закладкі</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Лагіны</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Паролі</string>
<!-- Preference for syncing tabs -->
@@ -740,8 +821,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s на %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Крэдытныя карты</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Спосабы аплаты</string>
<!-- Preference for syncing addresses -->
@@ -1698,12 +1777,8 @@
<string name="add_to_homescreen_description_2">Вы можаце лёгка дадаць гэты вэб-сайт на хатні экран вашай прылады, каб мець да яго імгненны доступ і аглядаць хутчэй, нібыта гэта асобная праграма.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Лагіны і паролі</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Паролі</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Захаванне лагінаў і пароляў</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Захоўваць паролі</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Пытаць пра захаванне</string>
@@ -1718,41 +1793,23 @@
<string name="preferences_android_autofill">Аўтазапаўненне ў іншых праграмах</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Запаўняць імёны карыстальнікаў і паролі ў іншых праграмах на вашай прыладзе.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Дадаць лагін</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Дадаць пароль</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Сінхранізацыя лагінаў</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Сінхранізаваць паролі</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Сінхранізаваць лагіны паміж прыладамі</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Сінхранізаваць паролі паміж прыладамі</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Захаваныя лагіны</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Захаваныя паролі</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Лагіны, якія вы захаваеце альбо сінхранізуеце праз %s, з’явяцца тут.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Даведацца больш пра сінхранізацыю.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Даведайцеся больш пра сінхранізацыю</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Выключэнні</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Не захаваныя лагіны і паролі з’явяцца тут.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Лагіны і паролі не будуць захаваны для гэтых сайтаў.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Выдаліць усе выключэнні</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Шукаць лагіны</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Пошук пароляў</string>
<!-- The header for the site that a login is for -->
@@ -1782,18 +1839,12 @@
<string name="saved_login_reveal_password">Паказаць пароль</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Схаваць пароль</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Разблакуйце, каб пабачыць захаваныя лагіны</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Разблакуйце, каб пабачыць захаваныя паролі</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Абараніце свае лагіны і паролі</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Абараніце захаваныя паролі</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Наладзьце графічны ключ, пін ці пароль для блакавання прылады, каб абараніць захаваныя лагіны і паролі ад крадзяжу, калі Вашай прыладай завалодае хтосьці іншы.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Наладзьце графічны ключ, пін або пароль для блакавання прылады, каб абараніць захаваныя паролі, калі хтосьці іншы атрымае доступ да вашай прылады.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Пазней</string>
@@ -1810,9 +1861,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Апошняе выкарыстанне</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Меню сартавання лагінаў</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Меню сартавання пароляў</string>
@@ -1821,27 +1869,17 @@
<string name="preferences_autofill">Аўтазапаўненне</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Адрасы</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Крэдытныя карты</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Спосабы аплаты</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Захоўваць і аўтаматычна запаўняць карты</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Захоўваць і запаўняць спосабы аплаты</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Дадзеныя зашыфраваны</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Сінхранізаваць карты паміж прыладамі</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Сінхранізаваць карты</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Дадаць крэдытную карту</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Дадаць карту</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Кіраванне захаванымі картамі</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Кіраваць картамі</string>
@@ -1849,13 +1887,9 @@
<string name="preferences_addresses_add_address">Дадаць адрас</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Кіраваць адрасамі</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Захоўваць і аўтаматычна запаўняць адрасы</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Захоўваць і запаўняць адрасы</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Уключаць звесткі, такія як нумары, адрасы электроннай пошты і дастаўкі</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Уключае нумары тэлефонаў і адрасы электроннай пошты</string>
@@ -1880,8 +1914,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Выдаліць карту</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Вы ўпэўнены, што жадаеце выдаліць гэту крэдытную карту?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Выдаліць карту?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Выдаліць</string>
@@ -1894,23 +1926,14 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Захаваныя карты</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Калі ласка, увядзіце сапраўдны нумар крэдытнай карты</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Увядзіце сапраўдны нумар карты</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Калі ласка, запоўніце гэтае поле</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Дадайце імя</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Разблакуйце, каб пабачыць захаваныя карты</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Абараніце свае крэдытныя карты</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Абараніце захаваныя спосабы аплаты</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Наладзьце графічны ключ, пін або пароль для блакавання прылады, каб абараніць захаваныя крэдытныя карты, калі хтось іншы атрымае доступ да вашай прылады.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Наладзіць зараз</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
@@ -1918,8 +1941,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Разблакуйце сваю прыладу</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Разблакуйце, каб выкарыстаць захаваную інфармацыю крэдытнай карты</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Разблакуйце, каб выкарыстаць захаваныя спосабы аплаты</string>
@@ -1929,12 +1950,6 @@
<string name="addresses_edit_address">Змяніць адрас</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Кіраваць адрасамі</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Імя</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Імя па бацьку</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Прозвішча</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Назва</string>
<!-- The header for the street address of an address -->
@@ -1961,8 +1976,6 @@
<string name="addressess_delete_address_button">Выдаліць адрас</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Вы ўпэўнены, што жадаеце выдаліць гэты адрас?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Выдаліць гэты адрас?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Выдаліць</string>
@@ -2066,49 +2079,29 @@
<string name="login_menu_delete_button">Выдаліць</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Змяніць</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Вы сапраўды хочаце выдаліць гэтае лагін?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Вы ўпэўнены, што хочаце выдаліць гэты пароль?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Выдаліць</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Адмяніць</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Налады лагіна</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Параметры пароля</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Тэкставае поле для рэдагавання вэб-адраса для ўваходу ў сістэму.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Тэкставае поле для рэдагавання адраса сайта.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Тэкставае поле для рэдагавання імені карыстальніка для ўваходу ў сістэму.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Тэкставае поле для рэдагавання імя карыстальніка.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Тэкставае поле для рэдагавання пароля для ўваходу ў сістэму.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Тэкставае поле для рэдагавання пароля.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Захаваць змены ва ўваходных даных.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Захаваць змены.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Рэдагаванне</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Змяніць пароль</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Дадаць новы лагін</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Дадаць пароль</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Патрабуецца пароль</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Увядзіце пароль</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Патрабуецца імя карыстальніка</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Увядзіце імя карыстальніка</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Патрабуецца імя хоста</string>
@@ -2474,7 +2467,7 @@
<!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
<string name="translation_error_language_not_supported_warning_text">На жаль, мы пакуль не падтрымліваем %1$s.</string>
<!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
- <string name="translation_error_language_not_supported_learn_more">Падрабязней</string>
+ <string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">Падрабязней</string>
<!-- Snackbar title shown if the user closes the Translation Request dialogue and a translation is in progress. -->
@@ -2490,7 +2483,9 @@
<!-- Translations options dialog -->
<!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
- <string name="translation_option_bottom_sheet_title">Параметры перакладу</string>
+ <string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">Параметры перакладу</string>
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title_heading">Параметры перакладу</string>
<!-- Toggle switch label that allows a user to set the setting if they would like the browser to always offer or suggest translations when available. -->
<string name="translation_option_bottom_sheet_always_translate">Заўсёды прапаноўваць пераклад</string>
<!-- Toggle switch label that allows a user to set if they would like a given language to automatically translate or not. The first parameter is the language name, for example, "Spanish". -->
@@ -2608,12 +2603,14 @@
<string name="debug_drawer_title">Інструменты адладкі</string>
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Перайсці назад</string>
+
+ <!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Інструменты картак</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Колькасць картак</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Дзейныя</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Дзейныя</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Неактыўныя</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2630,4 +2627,35 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">Дадаць да неактыўных картак</string>
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Дадаць да прыватных картак</string>
-</resources>
+
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Працягнуць</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Паведамленне аб прыватнасці</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label">Падаць</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Закрыць</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation">Дзякуй за ваш водгук!</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Вельмі задаволены</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Задаволены</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Нейтральны</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Незадаволены</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Вельмі незадаволены</string>
+
+ <!-- Debug drawer logins -->
+ <!-- The title of the Logins feature in the Debug Drawer. -->
+ <string name="debug_drawer_logins_title">Лагіны</string>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Бягучы дамен: %s</string>
+ <!-- The label for a button to add a new fake login for the current domain in the Logins feature. -->
+ <string name="debug_drawer_logins_add_login_button">Дадаць несапраўдны лагін для гэтага дамена</string>
+ </resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-bg/strings.xml b/mobile/android/fenix/app/src/main/res/values-bg/strings.xml
index 63fe480125..721c694545 100644
--- a/mobile/android/fenix/app/src/main/res/values-bg/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-bg/strings.xml
@@ -201,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Добавки</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Разширения</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Управление на добавки</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Открийте още разширения</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Информация за профила</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -219,6 +223,8 @@
<string name="browser_menu_open_in_regular_tab">Отваряне в обикновен раздел</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Добавяне към екрана</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Добавяне към началния екран…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Инсталиране</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -230,9 +236,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Превеждане на страницатa</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Запазване в списък…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Добавяне към списък</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Споделяне</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Споделяне…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Отваряне в %1$s</string>
@@ -287,6 +297,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Запазване</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Отбележете тази страница</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Промяна на отметка</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Запазване като PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Включете изгледа за четене</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Изключете изгледа за четене</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Превеждане на страницата…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Преведено на %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Отпечатване…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Няма разширения</string>
@@ -383,8 +411,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">бележка за поверителността на Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Научете повече в нашата политика за поверителност</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Обичаме да ви пазим в безопасност</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -591,7 +617,9 @@
<!-- Preference for language -->
<string name="preferences_language">Език</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Превод</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Превод</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Преводи</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Избор на данни</string>
<!-- Preference for data collection -->
@@ -664,10 +692,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Задължително</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">По желание</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Четене и промяна на данни на уебсайта</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Изтриване на уебсайт</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Разрешено за всички сайтове</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -793,8 +817,6 @@
<string name="preferences_sync_history">История</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Отметки</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Регистрации</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Пароли</string>
<!-- Preference for syncing tabs -->
@@ -820,8 +842,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s на %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Банкови карти</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Начини на плащане</string>
<!-- Preference for syncing addresses -->
@@ -837,6 +857,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Раздел от %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s затворени раздела: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Преглед на наскоро затворените раздели</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Изключения</string>
@@ -1777,12 +1805,8 @@
<string name="add_to_homescreen_description_2">Можете лесно да добавите тази страница към началния екран, за да имате бърз достъп до нея, подобно на приложение.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Регистрации и пароли</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Пароли</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Запазване на регистрации и пароли</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Запазване на пароли</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Питане за запазване</string>
@@ -1797,47 +1821,29 @@
<string name="preferences_android_autofill">Попълване в други приложения</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Попълват се потребителски имена и пароли в други приложения на устройството.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Добавяне на регистрация</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Добавяне на парола</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Синхронизиране на регистрации</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Синхронизиране на пароли</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Синхронизиране на регистрации между устройства</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Синхронизиране на пароли между устройства</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Запазени регистрации</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Запазени пароли</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Тук се показват нещата, които запазвате или синхронизирате във %s.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Паролите, които запазите или синхронизирате с %s ще бъдат изброени тук. Всички запазени пароли са шифровани.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Научете повече за Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Научете повече за синхронизирането</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Изключения</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Тук се показват регистрации и пароли, които не са запазени.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s няма да запазва пароли за сайтове, изброени тук.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Следните страници няма да запазват регистрации и пароли.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s няма да запази пароли за тези сайтове.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Изтриване на всички</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Търсене на регистрация</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Търсене на пароли</string>
<!-- The header for the site that a login is for -->
@@ -1867,17 +1873,11 @@
<string name="saved_login_reveal_password">Показване на парола</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Скриване на парола</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Отключете, за да видите запазените регистрации</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Отключете, за да видите запазените пароли</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Защитете вашите данни за вход</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Защитете запазените пароли</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Настройте фигура, PIN или парола за отключване на устройството, за да защитите запазените регистрации и пароли, в случай че някой друг има достъп до него.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Настройте фигура, PIN или парола за отключване на устройството, за да защитите запазените пароли от достъп, ако някой друг има вашето устройство.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">По-късно</string>
@@ -1893,8 +1893,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Име (А-Я)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Последно използване</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Меню за сортиране на регистрации</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Меню за сортиране на пароли</string>
@@ -1904,28 +1902,18 @@
<string name="preferences_autofill">Автоматично попълване</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Адреси</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Банкови карти</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Начини на плащане</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Запазване и автоматично попълване на карти</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Запазване и попълване на начини на плащане</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Данните са криптирани</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s шифрова всички запазени от вас начини на плащане</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Синхронизиране на карти между устройства</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Синхронизиране на карти</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Добавяне на карта</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Добавяне на карта</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Управление на карти</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Управление на карти</string>
@@ -1934,12 +1922,8 @@
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Управление на адреси</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Запазване и попълване на адреси</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Запазване и попълване на адреси</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Включително номера, електронни адреси и адреси за доставка</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Включва телефонни номера и имейл адреси</string>
@@ -1963,8 +1947,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Изтриване на картата</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Сигурни ли сте, че искате да премахнете тази банкова карта?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Изтриване на картата?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Премахване</string>
@@ -1976,23 +1958,15 @@
<string name="credit_cards_cancel_button">Отказ</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Запазени карти</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Моля, въведете валиден номер на банкова карта</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Въведете валиден номер на карта</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Попълнете полето</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Добавяне на име</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Отключете, за да видите запазените карти</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Защитете банковите си карти</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Защитете запазените начини на плащане</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Настройте фигура, PIN или парола за отключване на устройството, за да защитите запазените банкови карти, в случай че някой друг има достъп до него.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Настройте фигура, PIN или парола за отключване на устройството, за да защитите запазените методи на плащане от достъп, ако някой друг има вашето устройство.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Настройване</string>
@@ -2001,9 +1975,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Отключете устройството си</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Отключете, за да използвате запазената банкова карта</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Отключете, за да използвате запазените методи на плащане</string>
<!-- Title of the "Add address" screen -->
@@ -2012,13 +1983,7 @@
<string name="addresses_edit_address">Промяна на адрес</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Управление на адреси</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Първо име</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Презиме</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Фамилия</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Име</string>
<!-- The header for the street address of an address -->
@@ -2045,8 +2010,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Премахване на адреса</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Сигурни ли сте, че искате да премахнете този адрес?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Изтриване на този адрес?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Премахване</string>
@@ -2146,49 +2109,29 @@
<string name="login_menu_delete_button">Изтриване</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Редактиране</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Сигурни ли сте, че искате да изтриете тези данни за вход?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Сигурни ли сте, че искате да изтриете тази парола?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Изтриване</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Отказ</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Настройки за вход</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Опции за парола</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Текстовото поле за редактиране на адреса на регистрация.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Текстовото поле за редактиране на адреса на уебсайта.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Текстовото поле за редактиране на потребителското име на регистрация.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Текстовото поле за редактиране на потребителското име.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Текстовото поле за редактиране на паролата на регистрация.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Текстовото поле за редактиране на паролата.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Запазване на промените на регистрацията.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Запазване на промените.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Редактиране</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Редактиране на паролата</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Добавете регистрация</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Добавяне на парола</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Паролата е задължителна</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Въведете парола</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Потребителското име е задължително</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Въведете потребителско име</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Името на хоста е задължително</string>
@@ -2592,6 +2535,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Затваряне на листа Преводи</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Някои настройки временно не са налични.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Преводи</string>
@@ -2614,6 +2560,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Изберете език, който да управлявате „винаги превежда“ и „never translate“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Езиците не можаха да бъдат заредени. Моля, проверете отново по-късно.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Предложение за превод (по подразбиране)</string>
@@ -2636,6 +2585,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Премахване на %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Сайтовете не можаха да бъдат заредени. Моля, проверете отново по-късно.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Изтриване на %1$s?</string>
@@ -2713,13 +2664,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Връщане назад</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Отваряне на чекмеджето за отстраняване на грешки</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Инструменти за раздели</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Брой на разделите</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Включен</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Включен</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Включен</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Изключени</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2730,6 +2686,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Инструмент за създаване на раздели</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Количество на разделите за създаване</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Текстовото поле е празно</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Моля, въведете само положителни цели числа</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Моля, въведете число, по-голямо от нула</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Надвишен е максималният брой раздели (%1$s), които могат да бъдат генерирани с една операция</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Добавяне към активните раздели</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2746,11 +2712,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Политика на поверителност</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Изпращане</string>
+ <string name="micro_survey_submit_button_label">Изпращане</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Затваряне</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Затваряне</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Благодарим ви за отзива!</string>
+ <string name="micro_survey_feedback_confirmation">Благодарим ви за отзива!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Много доволен</string>
<!-- Option for likert scale -->
@@ -2762,6 +2728,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Много недоволен</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Отваряне на анкета</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Затваряне на анкетата</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Затваряне</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Регистрации</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-br/strings.xml b/mobile/android/fenix/app/src/main/res/values-br/strings.xml
index 053dc5cc07..4b32c7a51c 100644
--- a/mobile/android/fenix/app/src/main/res/values-br/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-br/strings.xml
@@ -46,11 +46,19 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Enrollet nevez ’zo</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Enrollet nevez ’zo</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Diskouez an holl sinedoù enrollet</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Diskouez an holl sinedoù enrollet</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Dilemel</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Dilemel</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Sinedoù</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Diskouez an holl sinedoù</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Dilemel</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">Gant Mozilla eo produet %1$s.</string>
@@ -100,6 +108,11 @@
<string name="tcp_cfr_learn_more">Gouzout hiroc’h a-zivout ar gwarez toupinoù hollek</string>
+ <!-- Private browsing erase action "contextual feature recommendation" (CFR) -->
+ <!-- Text for the message displayed in the contextual feature recommendation popup promoting the erase private browsing feature. -->
+ <string name="erase_action_cfr_message">Stokit amañ da gregiñ un estez prevez nevez. Dilemel a raio ho roll istor, ho toupinoù — pep tra.</string>
+
+
<!-- Text for the info dialog when camera permissions have been denied but user tries to access a camera feature. -->
<string name="camera_permissions_needed_message">Ezhomm a zo haeziñ ar c’hamera. Kit e Arventennoù Android, stokit war an aotreoù ha stokit war aotren.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
@@ -185,6 +198,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Askouezhioù</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Askouezhioù</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Merañ an askouezhioù</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Dizoloit muioc’h a askouezhioù</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Titouroù ar gont</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -203,18 +220,26 @@
<string name="browser_menu_open_in_regular_tab">Digeriñ en un ivinell ordinal</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Ouzhpennañ dʼar skramm degemer</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Ouzhpennañ d\'ar skramm degemer…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Staliañ</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Adgoubredañ</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Kavout er bajennad</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Kavout er bajennad…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Treiñ ar bajenn</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Enrollañ en dastumad…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Enrollañ en dastumad</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Rannañ</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Rannañ…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Digeriñ e %1$s</string>
@@ -243,11 +268,46 @@
<!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
<string name="browser_menu_sign_in">Kennaskañ</string>
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">Goubredit gerioù-tremen, ivinelloù ha muioc’h c’hoazh</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Kennaskañ en-dro evit goubredañ</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Ehanet eo ar goubredañ</string>
<!-- Browser menu label that creates a private tab -->
<string name="browser_menu_new_private_tab">Ivinell prevez nevez</string>
<!-- Browser menu label that navigates to the Password screen -->
<string name="browser_menu_passwords">Gerioù-tremen</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Nevez e %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Mont d\'ar stumm evit an urzhiataer</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Ostilhoù</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Enrollañ</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Lakaat ur sined war ar bajenn-mañ</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Kemmañ ar sined</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Enrollañ evel PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Enaouiñ ar mod lenn</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Kuitaat ar mod lenn</string>
+
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Treiñ ar bajenn…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Troet e %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Moullañ…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Askouezh ebet da gaout amañ</string>
@@ -262,6 +322,11 @@
<!-- Content description for the translate page toolbar button that opens the translations dialog when no translation has occurred. -->
<string name="browser_toolbar_translate">Treiñ ar bajenn</string>
+ <!-- Content description (not visible, for screen readers etc.) for the translate page toolbar button that opens the translations dialog when the page is translated successfully.
+ The first parameter is the name of the language that is displayed in the original page. (For example: English)
+ The second parameter is the name of the language which the page was translated to. (For example: French) -->
+ <string name="browser_toolbar_translated_successfully">Pajenn troet eus %1$s betek %2$s.</string>
+
<!-- Locale Settings Fragment -->
<!-- Content description for tick mark on selected language -->
<string name="a11y_selected_locale_content_description">Yezh dibabet</string>
@@ -334,8 +399,24 @@
<!-- Text for the button to not request notification permission on the device and dismiss the dialog -->
<string name="onboarding_home_enable_notifications_negative_button" moz:removedIn="124" tools:ignore="UnusedResources">Ket bremañ</string>
+ <!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
+ <!-- Description for learning more about our privacy notice. -->
+ <string name="juno_onboarding_privacy_notice_text">Politikerezh prevezded Firefox</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Ho surentez a zo talvoudus deomp</string>
+ <!-- Title for set firefox as default browser screen used by Nimbus experiments.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_default_browser_title_nimbus_3" tools:ignore="UnusedResources">Dizoloit perak e plij Firefox da vilionoù a dud</string>
+ <!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_title_nimbus_4" tools:ignore="UnusedResources">Merdeiñ diogel ha muioc\'h a zibaboù</string>
+ <!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_description_nimbus_3">Hor merdeer harpet gant un aozadur hep gounidoù a sikour da herzel an embregerezhioù d\'ho heuliañ pep lec\'h er web.</string>
+ <!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_description_nimbus_4" tools:ignore="UnusedResources">Ouzhpenn 100 milion a dud a warez o buhez prevez en ur zibab ur merdeer a zo harpet gant un aozadur hep gounidoù.</string>
+ <!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_description_nimbus_5" tools:ignore="UnusedResources">Heulierien anavezet? Stanket diouzhtu. Askouezhioù? Esaeit 700 anezho. PDFoù? Hol lenner enkorfet a lako anezho aes da verañ.</string>
+ <!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_description_nimbus_2" moz:RemovedIn="124" tools:ignore="UnusedResources">Hor merdeer harpet gant un aozadur hep gounidoù a sikour da herzel an embregerezhioù d\'ho heuliañ pep lec\'h er web.\n\nGouzout hiroc’h en hor reolennoù a-fet buhez prevez.</string>
<!-- Text for the link to the privacy notice webpage for set as firefox default browser screen.
This is part of the string with the key "juno_onboarding_default_browser_description". -->
<string name="juno_onboarding_default_browser_description_link_text" moz:RemovedIn="124" tools:ignore="UnusedResources">evezhiadennoù a-fet buhez prevez</string>
@@ -343,6 +424,11 @@
<string name="juno_onboarding_default_browser_positive_button" tools:ignore="UnusedResources">Lakaat da verdeer dre ziouer</string>
<!-- Text for the button dismiss the screen and move on with the flow -->
<string name="juno_onboarding_default_browser_negative_button" tools:ignore="UnusedResources">Ket bremañ</string>
+ <!-- Title for sign in to sync screen. -->
+ <string name="juno_onboarding_sign_in_title_2">Chomit enrineget pa tremenit eus un trevnad d\'egile</string>
+ <!-- Description for sign in to sync screen. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_sign_in_description_2">Pa kennaskit hag e weredekait ar goubredañ eo kreñvoc\'h ho surentez. Fiefox a enrineg ho kerioù-tremen, ho sinedoù hag muioc’h c’hoazh.</string>
<!-- Text for the button to sign in to sync on the device -->
<string name="juno_onboarding_sign_in_positive_button" tools:ignore="UnusedResources">Kennaskañ</string>
<!-- Text for the button dismiss the screen and move on with the flow -->
@@ -350,11 +436,23 @@
<!-- Title for enable notification permission screen used by Nimbus experiments. Nimbus experiments do not support string placeholders.
Note: The word "Firefox" should NOT be translated -->
<string name="juno_onboarding_enable_notifications_title_nimbus_2">Gant ar rebuzadurioù e c’hallit chom suroc\'h gant Firefox</string>
+ <!-- Description for enable notification permission screen used by Nimbus experiments. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_enable_notifications_description_nimbus_2">Kas ivinelloù etre ho trevnadoù ha dizoloit keweriusterioù prevezded all Firefox.</string>
<!-- Text for the button to request notification permission on the device -->
<string name="juno_onboarding_enable_notifications_positive_button" tools:ignore="UnusedResources">Gweredekaat ar rebuzadurioù</string>
<!-- Text for the button dismiss the screen and move on with the flow -->
<string name="juno_onboarding_enable_notifications_negative_button" tools:ignore="UnusedResources">Ket bremañ</string>
+ <!-- Title for add search widget screen used by Nimbus experiments. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_add_search_widget_title" tools:ignore="UnusedResources">Esaeit widjet klask Firefox</string>
+ <!-- Description for add search widget screen used by Nimbus experiments. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_add_search_widget_description" tools:ignore="UnusedResources">Gant Firefox war ho skramm degemer e c’halloc’h digeriñ ar merdeer a lak ho puhez prevez da gentañ hag a stank an heulierien etre al lec’hiennoù.</string>
+ <!-- Text for the button to add search widget on the device used by Nimbus experiments. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_add_search_widget_positive_button" tools:ignore="UnusedResources">Ouzhpennañ ur widjet FIrefox</string>
<!-- Text for the button to dismiss the screen and move on with the flow -->
<string name="juno_onboarding_add_search_widget_negative_button" tools:ignore="UnusedResources">Ket bremañ</string>
@@ -391,6 +489,8 @@
<string name="preferences_search_engines">Luskerioù klask</string>
<!-- Preference for settings related to Search engines suggestions-->
<string name="preferences_search_engines_suggestions">Kinnigoù al luskerioù enklask</string>
+ <!-- Preference Category for settings related to Search address bar -->
+ <string name="preferences_settings_address_bar">Gwellvezioù ar varrenn chomlec’h</string>
<!-- Preference Category for settings to Firefox Suggest -->
<string name="preference_search_address_bar_fx_suggest">Barrenn chomlec\'hioù - Alioù Firefox</string>
<!-- Preference link to Learn more about Firefox Suggest -->
@@ -421,6 +521,10 @@
<!-- Preference for enabling "HTTPS-Only" mode -->
<string name="preferences_https_only_title">Mod HTTPS-hepken</string>
+ <!-- Label for cookie banner section in quick settings panel. -->
+ <string name="cookie_banner_blocker">Stanker banniel an toupinoù</string>
+ <!-- Preference for removing cookie/consent banners from sites automatically in private mode. See reduce_cookie_banner_summary for additional context. -->
+ <string name="preferences_cookie_banner_reduction_private_mode">Stanker banniel an toupinoù er merdeiñ prevez</string>
<!-- Text for indicating cookie banner handling is off this site, this is shown as part of the protections panel with the tracking protection toggle -->
<string name="reduce_cookie_banner_off_for_site">Diweredekaet evit al lec’hienn-mañ</string>
<!-- Text for cancel button indicating that cookie banner reduction is not supported for the current site, this is shown as part of the cookie banner details view. -->
@@ -437,9 +541,22 @@
<string name="reduce_cookie_banner_unsupported_site_request_submitted_2">Goulenn skor kaset</string>
<!-- Text for indicating cookie banner handling is currently not supported for this site, this is shown as part of the protections panel with the tracking protection toggle -->
<string name="reduce_cookie_banner_unsupported_site">N’eo ket skoret al lec’hienn-mañ c’hoazh</string>
+ <!-- Title text for a detail explanation indicating cookie banner handling is on this site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is a shortened URL of the current site-->
+ <string name="reduce_cookie_banner_details_panel_title_on_for_site_1">Gweredekaat stanker banniel an toupinoù evit %1$s?</string>
+ <!-- Title text for a detail explanation indicating cookie banner handling is off this site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is a shortened URL of the current site-->
+ <string name="reduce_cookie_banner_details_panel_title_off_for_site_1">Diweredekaat stanker banniel an toupinoù evit %1$s?</string>
<!-- Title text for a detail explanation indicating cookie banner reducer didn't work for the current site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is the application name-->
<string name="reduce_cookie_banner_details_panel_title_unsupported_site_request_2">%1$s n’hall ket nac’hañ ar goulennoù toupinoù war al lec’hienn-mañ. Gallout a rit goulenn e vefe skoret al lec’hienn-mañ en dazont.</string>
+ <!-- Long text for a detail explanation indicating what will happen if cookie banner handling is off for a site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is the application name -->
+ <string name="reduce_cookie_banner_details_panel_description_off_for_site_1">Diweredekaat ha skarzhet e vo an toupinoù hag adkarget al lec’hienn gant %1$s. Digennaskañ a raio ac’hanoc’h ha goullonderiñ a raio ho paner.</string>
+ <!-- Long text for a detail explanation indicating what will happen if cookie banner handling is on for a site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is the application name -->
+ <string name="reduce_cookie_banner_details_panel_description_on_for_site_3">Gweredekaat ha %1$s a glasko nac’hañ bannieloù an toupinoù ent emgefreek war al lec’hienn-mañ.</string>
+ <!--Title for the cookie banner re-engagement CFR, the placeholder is replaced with app name -->
+ <string name="cookie_banner_cfr_title">%1$s en deus nac’het toupinoù evidoc’h</string>
+ <!--Message for the cookie banner re-engagement CFR -->
+ <string name="cookie_banner_cfr_message">Nebeutoc’h a draoù diezhomm, nebeutoc’h a doupinoù ho’ch heuliañ ac’hanoc’h war al lec’hienn-mañ.</string>
+
<!-- Description of the preference to enable "HTTPS-Only" mode. -->
<string name="preferences_https_only_summary">Klask kennaskañ ent emgefreek gant ar c’homenad HTTPS evit muioc’h a surentez.</string>
<!-- Summary of https only preference if https only is set to off -->
@@ -466,6 +583,8 @@
<string name="preferences_override_account_server">Dafariad kont Mozilla personelaet</string>
<!-- Preference to override the Sync token server -->
<string name="preferences_override_sync_tokenserver">Dafariad Sync personelaet</string>
+ <!-- Toast shown after updating the Mozilla account/Sync server override preferences -->
+ <string name="toast_override_account_sync_server_done">Kemmet eo bet an dafariad kontoù Mozilla/Sync. Serriñ a raio an arload evit kemer ar c\'hemmoù e kont…</string>
<!-- Preference category for account information -->
<string name="preferences_category_account">Kont</string>
<!-- Preference for changing where the toolbar is positioned -->
@@ -486,6 +605,10 @@
<string name="preferences_account_sync_error">Adkennaskit evit kendercʼhel gant ar goubredañ</string>
<!-- Preference for language -->
<string name="preferences_language">Yezh</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Troidigezh</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Troidigezhioù</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Dibaboù roadennoù</string>
<!-- Preference for data collection -->
@@ -512,9 +635,14 @@
<string name="preferences_enable_autocomplete_urls">Leuniañ an ereoù ent emgefreek</string>
<!-- Preference title for switch preference to show sponsored Firefox Suggest search suggestions -->
<string name="preferences_show_sponsored_suggestions">Kinnigoù paeroniet</string>
+ <!-- Summary for preference to show sponsored Firefox Suggest search suggestions.
+ The first parameter is the name of the application. -->
+ <string name="preferences_show_sponsored_suggestions_summary">Harpit %1$s gant kuzulioù kevelet diskouezet ur wech an amzer</string>
<!-- Preference title for switch preference to show Firefox Suggest search suggestions for web content.
The first parameter is the name of the application. -->
<string name="preferences_show_nonsponsored_suggestions">Alioù %1$s</string>
+ <!-- Summary for preference to show Firefox Suggest search suggestions for web content -->
+ <string name="preferences_show_nonsponsored_suggestions_summary">Kaout alioù eus ar web hervez ho klaskoù</string>
<!-- Preference for open links in third party apps -->
<string name="preferences_open_links_in_apps">Digeriñ ereoù en arloadoù</string>
<!-- Preference for open links in third party apps always open in apps option -->
@@ -534,8 +662,12 @@
<!-- Preference for add_ons -->
<string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">Askouezhioù</string>
+ <!-- Preference for extensions -->
+ <string name="preferences_extensions">Askouezhioù</string>
<!-- Preference for installing a local add-on -->
<string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Staliañ un askouezh diouzh ar restr</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">Staliañ an askouezh adalek ur restr</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Rebuzadurioù</string>
@@ -549,8 +681,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Rediet</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Diret</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Dilemel al lec’hienn</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Aotren evit an holl lec’hiennoù</string>
@@ -574,7 +704,9 @@
<string name="customize_toggle_jump_back_in">Distreiñ</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Ivinelloù nevez</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Ivinelloù nevez</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Sinedoù</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Gweladennet nevez ’zo</string>
@@ -634,6 +766,8 @@
<string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">Diweredekaet eo an askouezhioù evit ar mare</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
<string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Klask adloc’hañ an askouezhioù</string>
+ <!-- Button text on the extension crash dialog to prompt the user to try restarting the extensions but the dialog will reappear if it is unsuccessful again -->
+ <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Klaskit adloc’hañ an askouezhioù</string>
<!-- The user will continue with all add-ons disabled -->
<string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Kenderc’hel gant an askouezhioù bet diweredekaet</string>
@@ -650,8 +784,6 @@
<string name="preferences_sync_history">Roll istor</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Sinedoù</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Titouroù kennaskañ</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Gerioù-tremen</string>
<!-- Preference for syncing tabs -->
@@ -679,8 +811,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s war %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kartennoù kred</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Doareoù paeañ</string>
<!-- Preference for syncing addresses -->
@@ -696,6 +826,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Ivinell eus %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s ivinell serret: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Diskouez an ivinelloù bet serret nevez zo</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Nemedennoù</string>
@@ -1611,12 +1749,8 @@
<string name="add_to_homescreen_description_2">Gallout a rit ouzhpennañ al lec’hienn-mañ da bennbajenn ho trevnad evit mont war-eeun ha merdeiñ primoc’h evel ma vefe un arload.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Titouroù kennaskañ</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Gerioù-tremen</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Enrollañ an titouroù kennaskañ</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Enrollañ ar gerioù-tremen</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Goulenn a-raok enrollañ</string>
@@ -1632,36 +1766,18 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Leuniañ anvioù-implijer ha gerioù-tremen en arloadoù-all war ho trevnad.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Ouzhpennañ titouroù kennaskañ</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Ouzhpennañ ur ger-tremen</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Goubredañ an titouroù kennaskañ</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Goubredañ ar gerioù-tremen</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Goubredañ an titouroù kennaskañ dre an trevnadoù</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Titouroù kennaskañ enrollet</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Gerioù-tremen enrollet</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">An titouroù kennaskañ a enrollit pe c’houbredit e %s a vo diskouezet amañ.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Gouzout hiroc’h diwar-benn Sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Nemedennoù</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">An titouroù kennaskañ n’int ket enrollet a vo diskouezet amañ.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ne vo ket enrollet an titouroù kennaskañ evit al lec’hiennoù-mañ.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Dilemel an holl nemedennoù</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Klask titouroù kennaskañ</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Klask er gerioù-tremen</string>
<!-- The header for the site that a login is for -->
@@ -1691,14 +1807,8 @@
<string name="saved_login_reveal_password">Diskouez ar ger-tremen</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Kuzhat ar ger-tremen</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Dibrennit evit gwelet ho titouroù kennaskañ enrollet</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Diogelit ho titouroù kennaskañ</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Diogelit ho kerioù-tremen enrollet</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Arventennit ur patrom morailh, ur PIN pe ur ger-tremen evit gwareziñ ho titouroù kennaskañ enrollet da vezañ lennet gant unan bennak all.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Diwezhatoc’h</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
@@ -1713,34 +1823,22 @@
<string name="saved_logins_sort_strategy_alphabetically">Anv (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Arver diwezhañ</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Lañser rummañ an titouroù kennaskañ</string>
<!-- Autofill -->
<!-- Preference and title for managing the autofill settings -->
<string name="preferences_autofill">Leuniañ ent emgefreek</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Chomlec’hioù</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kartennoù kred</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Doareoù paeañ</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Enrollañ ha leuniañ ar c’hartennoù en un doare emgefreek</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Enrollañ ha leuniañ an doareoù paeañ</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Rineget eo ar roadennoù</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Goubredañ ar c’hartennoù kred etre ho trevnadoù</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Goubredañ ar c\'hartennoù</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Ouzhpennañ ur gartenn gred</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Ouzhpennañ ur gartenn</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Merañ ar c’hartennoù enrollet</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Merañ ar c’hartennoù</string>
@@ -1749,12 +1847,8 @@
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Merañ ar chomlec’hioù</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Enrollañ ha leuniañ ar chomlec’hioù en un doare emgefreek</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Enrollañ ha leuniañ ar chomlec’hioù</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Enkorfañ a ra titouroù evel niverennoù, posteloù ha chomlec’hioù</string>
<!-- Title of the "Add card" screen -->
<string name="credit_cards_add_card">Ouzhpennañ ur gartenn</string>
@@ -1776,8 +1870,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Dilemel ar gartenn</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ha fellout a ra deocʼh dilemel ar gartenn gred-mañ?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Dilemel ar gartenn?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Dilemel</string>
@@ -1790,24 +1882,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Kartennoù enrollet</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Biziatait un niverenn kartenn gred talvoudek mar plij.</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Enankit un niverenn gartenn reizh</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Mar plij, leugnit ar maez-mañ</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Ouzhpennañ un anv</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Dibrennit da welet ho kartennoù enrollet</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Diogelit ho kartennoù kred</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Diogelit ho toareoù paeañ enrollet</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Arventennit ur patrom prennañ, ur PIN pe ur ger-tremen evit gwareziñ ho kartennoù kred enrollet ma vez ho trevnad gant unan bennak all.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Arventennañ bremañ</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
@@ -1815,21 +1898,12 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Dibrennit ho trevnad</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Dibrennit evit implijout titouroù kartenn gred enrollet</string>
-
<!-- Title of the "Add address" screen -->
<string name="addresses_add_address">Ouzhpennañ ur chomlec’h</string>
<!-- Title of the "Edit address" screen -->
<string name="addresses_edit_address">Embann ur chomlec’h</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Merañ ar chomlec’hioù</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Añv bihan</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Anv kreiz</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Anv familh</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Anv</string>
<!-- The header for the street address of an address -->
@@ -1856,8 +1930,6 @@
<string name="addressess_delete_address_button">Dilemel ar chomlec’h</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ha sur oc’h e fell deoc’h dilemel ar chomlec’h-mañ?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Dilemel ar chomlec’h-mañ?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Dilemel</string>
@@ -1954,41 +2026,21 @@
<string name="login_menu_delete_button">Dilemel</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Embann</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Sur oc’h e fell deoc’h dilemel an titour-kennaskañ-mañ?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Sur ocʼh e fell deocʼh dilemel ar ger-tremen-mañ?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Dilemel</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Nullañ</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Dibarzhioù an titouroù kennaskañ</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ar vaezienn destenn kemmus evit chomlec’h web an titour kennaskañ.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ar vaezienn destenn kemmus evit anv arveriad an titour kennaskañ.</string>
- <!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ar vaezienn destenn kemmus evit ger-tremen an titour kennaskañ.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Enrollañ ar c’hemmoù d’an titouroù kennaskañ.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Enrollañ ar cʼhemmoù.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Embann</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Aozañ ar ger-tremen</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Ouzhpennañ titouroù kennaskañ nevez</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Ouzhpennañ ur ger-tremen</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Ger-tremen azgoulennet</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Enankit ur ger-tremen</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Anv-implijer rekis</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Enankit un anv-implijer</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Anv an ostiz rekis</string>
@@ -2249,6 +2301,9 @@
<!-- Title for dialog displayed when trying to access links present in a text. -->
<string name="a11y_links_title">Ereoù</string>
+ <!-- Additional content description for text bodies that contain urls. -->
+ <string name="a11y_links_available">Liammoù da gaout</string>
+
<!-- Translations feature-->
<!-- Translation request dialog -->
@@ -2262,6 +2317,8 @@
<string name="translations_bottom_sheet_translate_to">Treiñ e</string>
<!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button">Diwezhatoc’h</string>
+ <!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
+ <string name="translations_bottom_sheet_negative_button_restore">Diskouez an destenn orin</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Graet</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2293,6 +2350,8 @@
<string name="translation_option_bottom_sheet_never_translate_in_language">Na dreiñ biken %1$s</string>
<!-- Toggle switch label that allows a user to set the setting if they would like the browser to never translate the site the user is currently visiting. -->
<string name="translation_option_bottom_sheet_never_translate_site">Na dreiñ biken al lec’hienn-mañ</string>
+ <!-- Button text for the button that will take the user to the translation settings dialog. -->
+ <string name="translation_option_bottom_sheet_translation_settings">Arventennoù an droidigezh</string>
<!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translation_option_bottom_sheet_about_translations">Diwar-benn an treiñ e-barzh %1$s</string>
@@ -2390,7 +2449,9 @@
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Niver a ivinelloù</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Oberiant</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Oberiant</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Oberiant</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Dizoberiant</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2398,4 +2459,16 @@
<!-- The total tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_total">Hollad</string>
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Kenderc’hel</string>
+
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Serriñ</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation">Trugarez da vezañ roet hoc’h ali!</string>
+
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Domani a-vremañ: %s</string>
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-bs/strings.xml b/mobile/android/fenix/app/src/main/res/values-bs/strings.xml
index d32edb20bf..fcd01b9df4 100644
--- a/mobile/android/fenix/app/src/main/res/values-bs/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-bs/strings.xml
@@ -47,11 +47,19 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Nedavno sačuvano</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Nedavno sačuvano</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Prikaži sve sačuvane oznake</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Prikaži sve sačuvane oznake</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Ukloni</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Ukloni</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Oznake</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Prikaži sve oznake</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Ukloni</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s je razvila Mozilla.</string>
@@ -185,6 +193,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Add-oni</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Ekstenzije</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Upravljanje ekstenzijama</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Otkrijte više ekstenzija</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Podaci o računu</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -203,18 +215,26 @@
<string name="browser_menu_open_in_regular_tab">Otvori u standardnom tabu </string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Dodaj na Početni ekran</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Dodaj na početni ekran…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instaliraj</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Ponovo sinhronizuj</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Pronađi na stranici</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Pronađi na stranici…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Prevedi stranicu</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Sačuvaj u kolekciju…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Spasi u kolekciju</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Podijeli</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Dijeli…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Otvori u %1$s</string>
@@ -254,6 +274,34 @@
<!-- Browser menu label that navigates to the Password screen -->
<string name="browser_menu_passwords">Lozinke</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Novo u %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Prebacite se na desktop stranicu</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Alati</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Sačuvaj</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Označi ovu stranicu</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Uredi oznaku</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Sačuvaj kao PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Uključite Prikaz za čitanje</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Isključite Prikaz za čitanje</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Prevedi stranicu…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Prevedeno na %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Štampaj…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Ovdje nema ekstenzija</string>
@@ -345,8 +393,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox obavijest o privatnosti</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Saznajte više u našoj obavijesti o privatnosti</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Volimo da vas čuvamo</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -553,6 +599,10 @@
<string name="preferences_account_sync_error">Ponovo se povežite za nastavak sinhronizacije</string>
<!-- Preference for language -->
<string name="preferences_language">Jezik</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Prijevod</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Prijevodi</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Izbori podataka</string>
<!-- Preference for data collection -->
@@ -625,10 +675,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Obavezno</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcionalno</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Čitajte i mijenjajte podatke web stranice</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Izbriši web stranicu</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Dozvoli za sve stranice</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -657,7 +703,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Vrati se nazad</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Nedavne oznake</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Nedavne oznake</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Oznake</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Nedavno posjećeno</string>
@@ -750,8 +798,6 @@
<string name="preferences_sync_history">Historiju</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Zabilješke</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Prijave</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Lozinke</string>
<!-- Preference for syncing tabs -->
@@ -778,8 +824,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s na %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditne kartice</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Načini plaćanja</string>
<!-- Preference for syncing addresses -->
@@ -795,6 +839,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tab iz %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s zatvorenih tabova: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Pregledajte nedavno zatvorene tabove</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Izuzeci</string>
@@ -1716,12 +1768,8 @@
<string name="add_to_homescreen_description_2">Ovu web stranicu možete lahko dodati na Početni ekran uređaja za brz pristup istoj i da surfate brže s iskustvom sličnom aplikaciji.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Prijave i lozinke</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Lozinke</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Spašene prijave i lozinke</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Sačuvaj lozinke</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Pitaj za spašavanje</string>
@@ -1736,47 +1784,29 @@
<string name="preferences_android_autofill">Automatski ispuni u drugim aplikacijama</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Unesite korisnička imena i lozinke u druge aplikacije na svom uređaju.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Dodaj prijavu</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Dodaj lozinku</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sinkroniziraj prijave</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sinhronizuj lozinke</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sinhronizirajte prijave na svim uređajima</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sinhronizuj lozinke na svim uređajima</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Spašene prijave</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Sačuvane lozinke</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Prijave koje spasite ili sinhronizujete sa %s će se prikazati ovdje.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Lozinke koje sačuvate ili sinhronizujete sa %s će biti navedene ovdje. Sve lozinke koje sačuvate su šifrovane.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Saznajte više o Syncu.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Saznajte više o sinhronizaciji</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Izuzeci</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Prijave i lozinke koje nisu spašene će biti prikazane ovdje.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s neće sačuvati lozinke za web stranice navedene ovdje.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Prijave i lozinke neće biti spašene za ove web stranice.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s neće sačuvati lozinke za ove stranice.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Obriši sve izuzetke</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Pretraži prijave</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Traži lozinke</string>
<!-- The header for the site that a login is for -->
@@ -1806,17 +1836,11 @@
<string name="saved_login_reveal_password">Prikaži lozinku</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Sakrij lozinku</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Otključajte za pregled spašenih prijava</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Otključajte da vidite sačuvane lozinke</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Osigurajte svoje prijave i lozinke</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Osigurajte svoje sačuvane lozinke</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Podesite pattern za zaključavanje uređaja, PIN ili lozinku da zaštitite vaše spašene prijave i lozinke od pristupa druge osobe koja ima vaš uređaj.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Postavite obrazac za zaključavanje uređaja, PIN ili lozinku da zaštitite svoje sačuvane lozinke od pristupa ako neko drugi ima vaš uređaj.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Kasnije</string>
@@ -1833,9 +1857,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Zadnja upotreba</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Sortiraj meni prijava</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Meni za sortiranje lozinki</string>
@@ -1844,16 +1865,10 @@
<string name="preferences_autofill">Automatsko popunjavanje</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adrese</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditne kartice</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Načini plaćanja</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Sačuvajte i automatski popunjavajte kartice</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Sačuvaj i popuni načine plaćanja</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Podaci su šifrovani</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s šifruje sve načine plaćanja koje sačuvate</string>
@@ -1861,24 +1876,16 @@
<string name="preferences_credit_cards_sync_cards_across_devices">Sinhronizujte kartice na svim uređajima</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sinhronizuj kartice</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Dodaj kreditnu karticu</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Dodaj karticu</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Upravljaj sačuvanim karticama</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Upravljajte karticama</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Dodaj adresu</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Upravljaj adresama</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Sačuvajte i automatski popunjavajte adrese</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Sačuvajte i popunite adrese</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Uključite informacije kao što su brojevi, e-mail i adrese za dostavu</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Uključuje brojeve telefona i email adrese</string>
@@ -1902,8 +1909,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Izbriši karticu</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Jeste li sigurni da želite izbrisati ovu kreditnu karticu?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Izbrisati karticu?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Izbriši</string>
@@ -1915,23 +1920,15 @@
<string name="credit_cards_cancel_button">Otkaži</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Sačuvane kartice</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Unesite važeći broj kreditne kartice</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Unesite važeći broj kartice</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Molimo popunite ovo polje</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Dodaj ime</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Otključajte da vidite svoje sačuvane kartice</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Osigurajte svoje kreditne kartice</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Osigurajte svoje sačuvane načine plaćanja</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Postavite obrazac za zaključavanje uređaja, PIN ili lozinku da zaštitite svoje sačuvane kreditne kartice od pristupa ako neko drugi ima vaš uređaj.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Postavite obrazac za zaključavanje uređaja, PIN ili lozinku da zaštitite sačuvane načine plaćanja od pristupa ako neko drugi ima vaš uređaj.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Podesi odmah</string>
@@ -1939,8 +1936,6 @@
<string name="credit_cards_warning_dialog_later">Kasnije</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Otključajte svoj uređaj</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Otključajte za korištenje sačuvanih podataka o kreditnoj kartici</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Otključajte da koristite sačuvane načine plaćanja</string>
@@ -1950,12 +1945,6 @@
<string name="addresses_edit_address">Uredi adresu</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Upravljaj adresama</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Ime</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Srednje ime</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Prezime</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Ime</string>
<!-- The header for the street address of an address -->
@@ -1981,8 +1970,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Izbriši adresu</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Jeste li sigurni da želite izbrisati ovu adresu?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Izbrisati ovu adresu?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Izbriši</string>
@@ -2080,50 +2067,30 @@
<string name="login_menu_delete_button">Obriši</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Uredi</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Da li ste sigurni da želite obrisati ovu prijavu?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Jeste li sigurni da želite izbrisati ovu lozinku?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Obriši</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Otkaži</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opcije prijave</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opcije lozinke</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Izmjenjivo tekstualno polje za web adresu prijave.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Tekstualno polje koje se može uređivati za adresu web stranice.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Izmjenjivo tekstualno polje za korisničko ime prijave.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Tekstualno polje koje se može uređivati za korisničko ime.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Izmjenjivo tekstualno polje za lozinku prijave.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Tekstualno polje koje se može uređivati za lozinku.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Spasite izmjene za prijavu.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Sačuvaj promjene.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Uredi</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Uredi lozinku</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Dodaj novu prijavu</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Dodaj lozinku</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Potrebna lozinka</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Unesite lozinku</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Korisničko ime je obavezno</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Unesite korisničko ime</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Ime hosta je obavezno</string>
@@ -2468,6 +2435,8 @@
<string name="translations_bottom_sheet_negative_button">Ne sada</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Prikaži original</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Originalna neprevedena stranica je učitana</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Gotovo</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2525,6 +2494,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Zatvorite list Prijevodi</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Neke postavke su privremeno nedostupne.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Prijevodi</string>
@@ -2548,6 +2520,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Odaberite jezik za upravljanje postavkama ”uvijek prevodi“ i ”nikad ne prevodi“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Učitavanje jezika nije uspjelo. Molimo provjerite kasnije.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Ponudi prijevod (zadano)</string>
@@ -2570,6 +2545,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Ukloni %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Nije moguće učitati web stranice. Molimo provjerite kasnije.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Obrisati %1$s?</string>
@@ -2647,13 +2624,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Idite nazad</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Otvorite ladicu za otklanjanje grešaka</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Tab alati</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Broj tabova</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktivno</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktivno</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktivno</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Neaktivno</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2664,6 +2646,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Alat za kreiranje tabova</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Količina tabova za kreiranje</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Polje za tekst je prazno</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Unesite samo pozitivne cijele brojeve</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Unesite broj veći od nule</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Premašen je maksimalan broj tabova (%1$s) koji se mogu generisati u jednoj operaciji</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Dodaj aktivnim tabovima</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2671,6 +2663,39 @@
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Dodaj privatnim tabovima</string>
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Nastavi</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Popunite ovu anketu</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Napomena o privatnosti</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label">Pošalji</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Zatvori</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation">Hvala na povratnim informacijama!</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Vrlo zadovoljan</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Zadovoljan</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Neutralno</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Nezadovoljan</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Vrlo nezadovoljan</string>
+
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Otvori anketu</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Zatvori anketu</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Zatvori</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Prijave</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-cak/strings.xml b/mobile/android/fenix/app/src/main/res/values-cak/strings.xml
index 6fb48978ef..74c64172bf 100644
--- a/mobile/android/fenix/app/src/main/res/values-cak/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-cak/strings.xml
@@ -53,11 +53,19 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">K\'a b\'a keyak</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">K\'a b\'a keyak</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Kek\'ut ronojel ri yakon taq yaketal</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Kek\'ut ronojel ri yakon taq yaketal</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Tiyuj</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Tiyuj</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Taq yaketal</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Kek\'ut konojel taq yaketal</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Tiyuj</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s b\'anon ruma Mozilla.</string>
@@ -146,8 +154,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">K’ak’a’ ichinan ruwi’</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">Choj okem pa ewan tzij</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">Ewan taq tzij</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">Choj okem pa ewan tzij</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -189,11 +199,13 @@
<string name="browser_menu_stop">Tiq\'at</string>
<!-- Browser menu button that opens the addon manager -->
- <string name="browser_menu_add_ons">Taq tz\'aqat</string>
+ <string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Taq tz\'aqat</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_extensions">Taq k\'amal</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Rutzijol rub\'i\' taqoya\'l</string>
<!-- Text displayed when there are no add-ons to be shown -->
- <string name="no_add_ons">Majun tz\'aqat wakami</string>
+ <string name="no_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Majun tz\'aqat wakami</string>
<!-- Browser menu button that sends a user to help articles -->
<string name="browser_menu_help">To\'ïk</string>
<!-- Browser menu button that sends a to a the what's new article -->
@@ -210,11 +222,13 @@
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Titz\'aqatisäx pa ri Rutikirib\'al ruwa</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
- <string name="browser_menu_install_on_homescreen">Tiyak</string>
+ <string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Tiyak</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Tixim chik</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Tikanöx pa ruxaq</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Tikanöx pa ruxaq…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Titzalq\'omïx ruxaq</string>
<!-- Browser menu button that saves the current tab to a collection -->
@@ -249,6 +263,34 @@
<!-- Button shown on the home page that opens the Customize home settings -->
<string name="browser_menu_customize_home_1">Tawichinaj ri ruxaq atikirib\'al</string>
+ <!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
+ <string name="browser_menu_sign_in">Titikirisäx molojri\'ïl</string>
+
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">Kexim ewan taq tzij, taq ruwi\', chuqa\' ch\'aqa\' chik</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Titikirisäx chik molojri\'ïl richin ximojri\'ïl</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Q\'aton ximojri\'ïl</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">K\'ak\'a\' ichinan ruwi\'</string>
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">Ewan taq tzij</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">K\'ak\'a\' pa %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Tik\'ex rik\'in ruxaq kematz\'ib\'</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Samajib\'äl</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Tiyak</string>
+
+ <!-- Extensions management fragment -->
+ <!-- Text displayed when there are no extensions to be shown -->
+ <string name="extensions_management_no_extensions">Majun k\'amal k\'o wawe\'</string>
+
<!-- Browser Toolbar -->
<!-- Content description for the Home screen button on the browser toolbar -->
<string name="browser_toolbar_home">Rutikirib\'al ruwäch</string>
@@ -548,6 +590,8 @@
<string name="preferences_account_sync_error">Tokisäx chik richin nitikirisäx chik ri ximoj</string>
<!-- Preference for language -->
<string name="preferences_language">Ch\'ab\'äl</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation">Tzalq\'omanïk</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Rucha\'ik tzij</string>
<!-- Preference for data collection -->
@@ -598,10 +642,14 @@
<string name="quit_application">Tajin nel pa ri okisanel richin yejikib\'äx taq jaloj…</string>
<!-- Preference for add_ons -->
- <string name="preferences_addons">Taq tz’aqat</string>
+ <string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">Taq tz’aqat</string>
+ <!-- Preference for extensions -->
+ <string name="preferences_extensions">Taq k\'amal</string>
<!-- Preference for installing a local add-on -->
- <string name="preferences_install_local_addon">Tiyak ri tz\'aqat rik\'in ri yakb\'äl</string>
+ <string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Tiyak ri tz\'aqat rik\'in ri yakb\'äl</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">Tiyak k\'amal rik\'in yakb\'äl</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Taq rutzijol</string>
@@ -610,9 +658,13 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">Man ya\'on ta q\'ij chi re</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Rajowaxik</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
- <string name="preferences_customize_amo_collection">Kimolik ichinan taq Tz\'aqat</string>
+ <string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Kimolik ichinan taq Tz\'aqat</string>
<!-- Button caption to confirm the add-on collection configuration -->
<string name="customize_addon_collection_ok">ÜTZ</string>
<!-- Button caption to abort the add-on collection configuration -->
@@ -624,13 +676,13 @@
<!-- Hint displayed on input field for custom collection user ID-->
<string name="customize_addon_collection_user_hint">Rajaw Mol (Winäq ID)</string>
<!-- Toast shown after confirming the custom add-on collection configuration -->
- <string name="toast_customize_addon_collection_done">Xjal kimolaj tz\'aqat. Nitz\'apïx chokoy richin yesamajïx ri taq jaloj…</string>
+ <string name="toast_customize_addon_collection_done" moz:removedIn="126" tools:ignore="UnusedResources">Xjal kimolaj tz\'aqat. Nitz\'apïx chokoy richin yesamajïx ri taq jaloj…</string>
<!-- Customize Home -->
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Titz\'et chik</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">K\'ak\'a\' taq yaketal</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">K\'ak\'a\' taq yaketal</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">K\'a b\'a ketz\'et</string>
@@ -676,20 +728,20 @@
<!-- Add-ons general availability nimbus message-->
<!-- Title of the Nimbus message for add-ons general availability-->
- <string name="addon_ga_message_title" tools:ignore="UnusedResources">K\'ak\'a\' taq tz\'aqa ewachel wakami</string>
+ <string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">K\'ak\'a\' taq tz\'aqa ewachel wakami</string>
<!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
<string name="addon_ga_message_body" tools:ignore="UnusedResources">Ke\'awila\' +100 k\'ak\'a\' taq k\'amal ri nikiya\' q\'ij chawe\' nawichinaj Firefox.</string>
<!-- Button text of the Nimbus message for add-ons general availability. -->
- <string name="addon_ga_message_button" tools:ignore="UnusedResources">Kenik\'öx taq tz\'aqat</string>
+ <string name="addon_ga_message_button" moz:removedIn="126" tools:ignore="UnusedResources">Kenik\'öx taq tz\'aqat</string>
- <!-- Add-on process crash dialog to user -->
+ <!-- Extension process crash dialog to user -->
<!-- Title of a dialog shown to the user when enough errors have occurred with addons and they need to be temporarily disabled -->
- <string name="addon_process_crash_dialog_title" tools:ignore="UnusedResources">Echupun jumej ri taq tz\'aqat</string>
+ <string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">Echupun jumej ri taq tz\'aqat</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
- <string name="addon_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Tatojtob\'ej ye\'atzïj chik ri taq tz\'aqat</string>
+ <string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Tatojtob\'ej ye\'atzïj chik ri taq tz\'aqat</string>
<!-- The user will continue with all add-ons disabled -->
- <string name="addon_process_crash_dialog_disable_addons_button_text" tools:ignore="UnusedResources">Kesamajïx chik ri chupun taq tz\'aqat</string>
+ <string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Kesamajïx chik ri chupun taq tz\'aqat</string>
<!-- Account Preferences -->
<!-- Preference for managing your account via accounts.firefox.com -->
@@ -1859,6 +1911,8 @@
<string name="credit_cards_name_on_card_validation_error_message_2">Titz\'aqatisäx jun b\'i\'aj</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Man tiq\'at chik richin ye\'atz\'ët ri tarjeta\' e\'ayakon</string>
+ <!-- Message of warning dialog if users have no device authentication set up -->
+ <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Tab\'ana\' runuk\'ulem jun retal ruq\'atoj okisab\'äl, jun PIN o jun ewan tzij richin nachajij ri kre\'ito\' tarjeta\' e\'ayakon we xa ta k\'o xtichapo ri awokisab\'al.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Tib\'an runuk\'ulem wakami</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
@@ -2201,4 +2255,6 @@ Achi\'el: \nhttps://www.google.com/search?q=%s</string>
<!-- Translations feature-->
+ <!-- Micro survey -->
+
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-co/strings.xml b/mobile/android/fenix/app/src/main/res/values-co/strings.xml
index 01c3c63d1c..29d8291625 100644
--- a/mobile/android/fenix/app/src/main/res/values-co/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-co/strings.xml
@@ -595,7 +595,9 @@
<!-- Preference for language -->
<string name="preferences_language">Lingua</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Traduzzione</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traduzzione</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traduzzioni</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Scelta di dati</string>
<!-- Preference for data collection -->
@@ -2743,7 +2745,7 @@
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Numeru d’unghjette</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Attive</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Attive</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inattive</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
diff --git a/mobile/android/fenix/app/src/main/res/values-cs/strings.xml b/mobile/android/fenix/app/src/main/res/values-cs/strings.xml
index 2f50ff055d..66fc6aa503 100644
--- a/mobile/android/fenix/app/src/main/res/values-cs/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-cs/strings.xml
@@ -204,6 +204,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Doplňky</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Rozšíření</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Správa rozšíření</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Objevit další rozšíření</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informace o účtu</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -222,6 +226,8 @@
<string name="browser_menu_open_in_regular_tab">Otevřít v běžném panelu</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Přidat na plochu</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Přidat na domovskou obrazovku…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Nainstalovat</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -233,9 +239,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Přeložit stránku</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Uložit do sbírky…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Uložit do sbírky</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Sdílet</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Sdílet…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Otevřít v aplikaci %1$s</string>
@@ -290,6 +300,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Uložit</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Přidat stránku do záložek</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Upravit záložku</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Uložit jako PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Zapnout zobrazení čtečky</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Vypnout zobrazení čtečky</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Přeložit stránku…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Přeloženo do jazyka %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Tisk…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Nejsou tu žádná rozšíření</string>
@@ -387,8 +415,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Zásady ochrany osobních údajů</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Další informace naleznete v našich oznámeních o ochraně osobních údajů</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Rádi vás udržujeme v bezpečí</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -594,7 +620,9 @@
<!-- Preference for language -->
<string name="preferences_language">Jazyk</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Překladač</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Překladač</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Překlady</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Možnosti hlášení</string>
<!-- Preference for data collection -->
@@ -668,10 +696,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Vyžadováno</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Volitelné</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Čtení a změna údajů webových stránek</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Smazat webovou stránku</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Povolit pro všechny stránky</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -796,8 +820,6 @@
<string name="preferences_sync_history">Historii</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Záložky</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Přihlašovací údaje</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Hesla</string>
<!-- Preference for syncing tabs -->
@@ -825,8 +847,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s na %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Platební karty</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Platební metody</string>
<!-- Preference for syncing addresses -->
@@ -842,6 +862,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Panel z %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">V aplikaci %1$s bylo zavřeno %2$d panelů</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Zobrazení nedávno zavřených panelů</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Výjimky</string>
@@ -1783,12 +1811,8 @@
<string name="add_to_homescreen_description_2">Tuto stránku si můžete snadno přidat na domovskou obrazovku svého zařízení. Budete k ní mít okamžitý přístup a prohlížení bude rychlejší se zážitkem jako v aplikaci.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Přihlašovací údaje</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Hesla</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Ukládat přihlašovací údaje</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Ukládání hesel</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Před uložením se zeptat</string>
@@ -1803,46 +1827,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Vyplňování a ukládání uživatelských jmen a hesel v dalších aplikacích na vašem zařízení.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Přidat přihlašovací údaje</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Přidat heslo</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchronizovat přihlašovací údaje</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synchronizovat hesla</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchronizovat přihlašovací údaje mezi zařízeními</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synchronizovat hesla napříč zařízeními</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Uložené přihlašovací údaje</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Uložená hesla</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Uložené nebo synchronizované údaje aplikace %s se zobrazí tady.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Hesla, která uložíte nebo synchronizujete s aplikací %s, budou uvedena zde. Všechna uložená hesla jsou šifrována.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Zjistit více o službě Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Další informace o synchronizaci</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Výjimky</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Tady se zobrazí přihlašovací údaje, které se nebudou ukládat.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">Aplikace %s nebude nikdy ukládat hesla pro stránky uvedené v tomto seznamu.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Pro následující servery se nebudou přihlašovací údaje ukládat.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">Aplikace %s nebude nikdy ukládat hesla pro tyto stránky.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Odebrat všechny výjimky</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Hledat přihlašovací údaje</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Hledat v heslech</string>
<!-- The header for the site that a login is for -->
@@ -1871,17 +1876,11 @@
<string name="saved_login_reveal_password">Zobrazit heslo</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Skrýt heslo</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Odemknout pro zobrazení přihlašovacích údajů</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Pro zobrazení uložených hesel odemkněte</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Zabezpečte své přihlašovací údaje a hesla</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Zabezpečte svá uložená hesla</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastavte si gesto, PIN nebo heslo zámku obrazovky, který ochrání vaše uložené přihlašovací údaje, pokud by se vaše zařízení dostalo do ruky někomu jinému.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Nastavte si gesto, PIN nebo heslo zámku obrazovky, který ochrání vaše uložená hesla, pokud by se vaše zařízení dostalo do ruky někomu jinému.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Později</string>
@@ -1900,9 +1899,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Naposledy použito</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Seřadit podle</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Nabídka pro řazení hesel</string>
@@ -1911,41 +1907,27 @@
<string name="preferences_autofill">Automatické vyplňování</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresy</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Platební karty</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Platební metody</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Ukládat a automaticky vyplňovat karty</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Uložení a vyplnění platebních metod</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Data jsou šifrována</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s šifruje všechny vaše uložené platební metody</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synchronizovat karty napříč zařízeními</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synchronizovat platební karty</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Přidat platební kartu</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Přidat kartu</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Správa uložených karet</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Spravovat karty</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Přidat adresu</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Správa adres</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Ukládat a automaticky vyplňovat adresy</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Ukládat a vyplňovat adresy</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Zahrnuje informace jako čísla a e-mailové a doručovací adresy</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Zahrnuje telefonní čísla a e-mailové adresy</string>
@@ -1969,8 +1951,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Odstranit kartu</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Opravdu chcete tuto platební kartu smazat?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Odstranit kartu?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Smazat</string>
@@ -1984,24 +1964,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Uložené karty</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Zadejte prosím platné číslo platební karty</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Zadejte platné číslo karty</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Vyplňte prosím toto pole</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Zadejte jméno</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Odemknout pro zobrazení uložených karet</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Zabezpečte své platební karty</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Zabezpečte vaše uložené platební metody</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastavte si gesto, PIN nebo heslo zámku obrazovky, který ochrání vaše uložené platební karty, pokud by se vaše zařízení dostalo do ruky někomu jinému.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Nastavením vzoru zámku zařízení, kódu PIN nebo hesla ochráníte uložené platební metody před přístupem, pokud má vaše zařízení někdo jiný.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Nastavit</string>
@@ -2010,9 +1981,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Odemkněte zařízení</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Odemkněte pro použití informací o platební kartě</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Odemknout pro použití uložených způsobů platby</string>
<!-- Title of the "Add address" screen -->
@@ -2021,12 +1989,6 @@
<string name="addresses_edit_address">Upravit adresu</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Správa adres</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Křestní jméno</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Prostřední jméno</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Příjmení</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Název</string>
<!-- The header for the street address of an address -->
@@ -2053,8 +2015,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Smazat adresu</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Opravdu chcete tuto adresu smazat?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Smazat tuto adresu?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Smazat</string>
@@ -2154,49 +2114,29 @@
<string name="login_menu_delete_button">Odstranit</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Upravit</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Opravdu chcete tyto přihlašovací údaje odstranit?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Opravdu chcete smazat toto heslo?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Odstranit</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Zrušit</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Možnosti přihlášení</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Možnosti hesel</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Textové pole pro webovou adresu pro přihlašovací údaje.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Upravitelné textové pole pro adresu webové stránky.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Textové pole pro uživatelské jméno z přihlašovacích údajů.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Upravitelné textové pole pro uživatelské jméno.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Textové pole pro heslo z přihlašovacích údajů.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Upravitelné textové pole pro heslo.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Uložit změny přihlašovacích údajů.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Uložit změny.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Upravit</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Upravit heslo</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Přidat nové přihlašovací údaje</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Přidat heslo</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Je vyžadováno heslo</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Zadejte heslo</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Uživatelské je povinné</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Zadejte uživatelské jméno</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Adresa serveru je povinná</string>
@@ -2603,6 +2543,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Zavřít Překlady</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Některá nastavení jsou dočasně nedostupná.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Překlady</string>
@@ -2626,6 +2569,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Vyberte jazyk, u kterého chcete spravovat předvolby „vždy překládat“ a „nikdy nepřekládat“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Nelze načíst jazyky. Zkuste to prosím později.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Nabídnout překlad (výchozí)</string>
@@ -2649,6 +2595,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Odebrat %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Nelze načíst stránky. Zkuste to prosím později.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Smazat %1$s?</string>
@@ -2727,13 +2675,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Návrat zpět</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Otevřít ladicí panel</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Nástroje pro panely</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Počet panelů</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktivní</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktivní</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktivní</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Neaktivní</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2744,6 +2697,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Nástroj na vytváření panelů</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Počet panelů, které chcete vytvořit</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Textové pole je prázdné</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Zadejte prosím pouze kladná celá čísla</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Zadejte prosím číslo větší než nula</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Byl překročen maximální počet panelů (%1$s), které mohou být vygenerovány v jedné operaci</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Přidat mezi aktivní panely</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2760,11 +2723,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Zásady ochrany osobních údajů</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Odeslat</string>
+ <string name="micro_survey_submit_button_label">Odeslat</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Zavřít</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Zavřít</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Děkujeme za vaši zpětnou vazbu!</string>
+ <string name="micro_survey_feedback_confirmation">Děkujeme za vaši zpětnou vazbu!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Velmi spokojený</string>
<!-- Option for likert scale -->
@@ -2776,6 +2739,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Velmi nespokojený</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Otevře průzkum</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Zavře průzkum</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Zavřít</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Přihlašovací údaje</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-cy/strings.xml b/mobile/android/fenix/app/src/main/res/values-cy/strings.xml
index dda3ca243d..0aac4e2556 100644
--- a/mobile/android/fenix/app/src/main/res/values-cy/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-cy/strings.xml
@@ -199,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Ychwanegion</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Estyniadau</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Rheoli estyniadau</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Darganfod rhagor o estyniadau</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Manylion cyfrif</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -217,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">Agorwch mewn tab arferol</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Ychwanegu i’r sgrin Cartref</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Ychwanegu i\'r sgrin Cartref…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Gosod</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -228,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Cyfieithu\'r dudalen</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Cadw i gasgliad…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Cadw i Gasgliad</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Rhannu</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Rhannu…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Agor yn %1$s</string>
@@ -283,6 +293,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Cadw</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Gosod nod tudalen i\'r dudalen hon</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Golygu nod tudalen</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Cadw fel PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Trowch y Golwg Darllen ymlaen</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Diffodd y Golwg Darllen</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Cyfieithu tudalen…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Wedi\'i gyfieithu i %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Argraffu…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Dim estyniadau yma</string>
@@ -378,8 +406,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Hysbysiad preifatrwydd Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Darllenwch ein hysbysiad preifatrwydd</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Rydyn ni wrth ein bodd yn eich cadw chi’n ddiogel</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -589,7 +615,9 @@
<!-- Preference for language -->
<string name="preferences_language">Iaith</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Cyfieithu</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Cyfieithu</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Cyfieithu</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Dewisiadau data</string>
<!-- Preference for data collection -->
@@ -663,10 +691,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Angenrheidiol</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Dewisol</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Darllen a newid data gwefan</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Dileu gwefan</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Caniatáu ar gyfer pob gwefan</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -792,8 +816,6 @@
<string name="preferences_sync_history">Hanes</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Nodau Tudalen</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Mewngofnodion</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Cyfrineiriau</string>
<!-- Preference for syncing tabs -->
@@ -820,8 +842,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s o %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cardiau credyd</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Dulliau talu</string>
<!-- Preference for syncing addresses -->
@@ -837,6 +857,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tab o %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s tabiau wedi cau: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Gweld tabiau a gaewyd yn ddiweddar</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Eithriadau</string>
@@ -1761,12 +1789,8 @@
<string name="add_to_homescreen_description_2">Gallwch ychwanegu’r wefan hon yn hawdd i sgrin Cartref eich ffôn i gael mynediad ar unwaith a phori’n gyflymach gyda phrofiad tebyg i ap.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Mewngofnodion a chyfrineiriau</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Cyfrineiriau</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Cadw mewngofnodion a chyfrineiriau</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Cadw cyfrineiriau</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Gofyn i gadw</string>
@@ -1781,47 +1805,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Llenwi enwau defnyddwyr a chyfrineiriau mewn apiau eraill ar eich dyfais.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Ychwanegu mewngofnod</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Ychwanegu cyfrinair</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Cydweddu mewngofnodion</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Cydweddu cyfrineiriau</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Cydweddu mewngofnodion ar draws dyfeisiau</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Cydweddu cyfrineiriau ar draws dyfeisiau</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Mewngofnodion wedi’u cadw</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Cyfrineiriau wedi\'u cadw</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Bydd y mewngofnodi rydych yn eu cadw neu’n cydweddu i %s i’w gweld yma.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Bydd y cyfrineiriau rydych yn eu cadw neu eu cydweddu i %s yn cael eu rhestru yma. Mae\'r holl gyfrineiriau rydych chi\'n eu cadw wedi\'u hamgryptio.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Dysgu rhagor am Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Dysgwch fwy am gydweddu</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Eithriadau</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Bydd mewngofnodion a chyfrineiriau sydd heb eu cadw i’w gweld yma.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">Fydd %s ddim yn cadw cyfrineiriau ar gyfer gwefannau sy\'n cael eu rhestru yma.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ni fydd mewngofnodion a chyfrineiriau’n cael eu cadw ar gyfer y gwefannau hyn.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">Fydd %s ddim yn cadw cyfrineiriau ar gyfer y gwefannau hyn.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Dileu pob eithriad</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Chwilio mewngofnodion</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Chwilio cyfrineiriau</string>
<!-- The header for the site that a login is for -->
@@ -1851,17 +1856,11 @@
<string name="saved_login_reveal_password">Dangos cyfrinair</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Cuddio cyfrinair</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Datgloi i weld eich mewngofnodi wedi’u cadw</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Datgloi i weld eich cyfrineiriau wedi\'u cadw</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Diogelu mewngofnodion a chyfrineiriau</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Diogelwch eich cyfrineiriau wedi\'u cadw</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Creu patrwm cloi dyfais, PIN, neu gyfrinair i ddiogelu eich mewngofnodion a’ch cyfrineiriau sydd wedi’u cadw rhag i rhywun arall sydd â mynediad i’ch dyfais.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Gosodwch batrwm clo dyfais, PIN, neu gyfrinair i ddiogelu eich cyfrineiriau sydd wedi\'u cadw rhag i rywun arall sydd â\'ch dyfais gael mynediad iddyn nhw.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Yn hwyrach</string>
@@ -1878,8 +1877,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Enw (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Defnyddiwyd Diwethaf</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Trefnu dewislen mewngofnodi</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Didoli dewislen cyfrineiriau</string>
@@ -1889,41 +1886,27 @@
<string name="preferences_autofill">Awtolanw</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Cyfeiriadau</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cardiau credyd</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Dulliau talu</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cadw ac awtolanw cardiau</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Cadw a llanw dulliau talu</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Mae data wedi’i amgryptio</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">Mae %s yn amgryptio pob dull talu rydych yn ei gadw</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Cydweddu cardiau ar draws dyfeisiau</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Cydweddu cardiau</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Ychwanegu cerdyn credyd</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Ychwanegu cerdyn</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Rheoli cardiau wedi’u cadw</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Rheoli cardiau</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Ychwanegu cyfeiriad</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Rheoli cyfeiriadau</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Cadw ac awtolanw cyfeiriadau</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Cadw a llanw cyfeiriadau</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Cynhwyswch fanylion fel rhifau, cyfeiriadau e-bost a chludo</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Yn cynnwys rhifau ffôn a chyfeiriadau e-bost</string>
@@ -1947,8 +1930,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Dileu cerdyn</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ydych chi’n siŵr eich bod am ddileu’r cerdyn credyd yma?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Dileu cerdyn?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Dileu</string>
@@ -1962,24 +1943,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Cardiau wedi’u cadw</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Rhowch rif cerdyn credyd dilys</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Rhoi rif cerdyn dilys</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Llanwch y maes yma.</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Ychwanegu enw</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Datgloi i weld y cardiau rydych wedi’u cadw</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Diogelwch eich cerdyn credyd</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Diogelu eich dulliau talu sydd wedi\'u cadw</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Gosodwch batrwm cloi dyfais, PIN, neu gyfrinair i ddiogelu eich mewngofnodion a’ch cyfrineiriau sydd wedi’u cadw rhag i rhywun arall sydd â mynediad i’ch dyfais.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Gosodwch batrwm clo dyfais, PIN, neu gyfrinair i ddiogelu eich dulliau talu rhag i rywun arall sydd â\'ch dyfais gael mynediad iddyn nhw.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Gosod nawr</string>
@@ -1988,9 +1960,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Datgloi’ch dyfais</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Datglowch i ddefnyddio manylion cerdyn credyd wedi’i storio</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Datgloi i ddefnyddio dulliau talu wedi\'u cadw</string>
<!-- Title of the "Add address" screen -->
@@ -1999,12 +1968,6 @@
<string name="addresses_edit_address">Golygu cyfeiriad</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Rheoli cyfeiriadau</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Enw Cyntaf</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Enw Canol</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Enw Olaf</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Enw</string>
<!-- The header for the street address of an address -->
@@ -2031,8 +1994,6 @@
<string name="addressess_delete_address_button">Dileu cyfeiriad</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ydych chi’n siŵr eich bod am ddileu’r cyfeiriad hwn?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Dileu\'r cyfeiriad hwn?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Dileu</string>
@@ -2130,49 +2091,29 @@
<string name="login_menu_delete_button">Dileu</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Golygu</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ydych chi’n siŵr eich bod eisiau dileu’r mewngofnod?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Ydych chi\'n siŵr eich bod am ddileu\'r cyfrinair hwn?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Dileu</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Diddymu</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Dewisiadau mewngofnodi</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Dewisiadau cyfrineiriau</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Maes testun golygadwy cyfeiriad gwe’r mewngofnodi.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Maes testun golygadwy y wefan.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Maes testun golygadwy enw defnyddiwr y mewngofnodi.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Maes testun golygadwy yr enw defnyddiwr.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Maes testun golygadwy cyfrinair y mewngofnodi.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Maes testun golygadwy y cyfrinair.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Cadw newidiadau i’r mewngofnodi.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Cadw newidiadau.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Golygu</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Golygu cyfrinair</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Ychwanegu mewngofnod newydd</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Ychwanegu cyfrinair</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Mae angen cyfrinair</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Rhowch gyfrinair</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Mae angen enw defnyddiwr</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Rhoi enw defnyddiwr</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Mae angen enw gwesteiwr</string>
@@ -2580,6 +2521,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Cau\'r ddalen Cyfieithiadau</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Nid yw rhai gosodiadau ar gael dros dro.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Cyfieithu</string>
@@ -2602,6 +2546,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Dewiswch iaith i reoli dewisiadau ”cyfieithu bob tro“ a ”peidio â chyfieithu“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Methu llwytho ieithoedd. Gwiriwch yn ôl yn nes ymlaen.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Cynnig i gyfieithu (rhagosodedig)</string>
@@ -2624,6 +2571,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Tynnu %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Methu llwytho gwefannau. Gwiriwch yn ôl yn nes ymlaen.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Dileu %1$s?</string>
@@ -2701,13 +2650,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Symud nôl</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Agor drôr dadfygio</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Offer Tab</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Cyfrif tab</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Gweithredol</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Gweithredol</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Gweithredol</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Anweithredol</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2718,6 +2672,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Teclyn creu tabiau</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Nifer y tabiau i\'w creu</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Mae maes testun yn wag</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Rhowch gyfanrifau positif yn unig</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Rhowch rif sy\'n fwy na sero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Wedi mynd y tu hwnt i uchafswm nifer y tabiau (%1$s) y gellir eu cynhyrchu mewn un gweithrediad</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Ychwanegu at y tabiau gweithredol</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2734,11 +2698,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Hysbysiad Preifatrwydd</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Cyflwyno</string>
+ <string name="micro_survey_submit_button_label">Cyflwyno</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Cau</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Cau</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Diolch am eich adborth!</string>
+ <string name="micro_survey_feedback_confirmation">Diolch am eich adborth!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Bodlon Iawn</string>
<!-- Option for likert scale -->
@@ -2750,6 +2714,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Anfodlon Iawn</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Agor arolwg</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Cau\'r arolwg</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Cau</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Mewngofnodion</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-da/strings.xml b/mobile/android/fenix/app/src/main/res/values-da/strings.xml
index 98609735d8..5759e3a0a6 100644
--- a/mobile/android/fenix/app/src/main/res/values-da/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-da/strings.xml
@@ -49,12 +49,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Gemt for nylig</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Gemt for nylig</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Vis alle gemte bogmærker</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Vis alle gemte bogmærker</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Fjern</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Fjern</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Bogmærker</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Vis alle bogmærker</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Fjern</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s er lavet af Mozilla.</string>
@@ -192,6 +200,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Tilføjelser</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Udvidelser</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Håndter udvidelser</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Opdag flere udvidelser</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Kontooplysninger</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -210,6 +222,8 @@
<string name="browser_menu_open_in_regular_tab">Åbn i almindeligt faneblad</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Føj til startskærm</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Føj til startskærm…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installer</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -221,9 +235,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Oversæt side</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Gem til samling…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Gem til samling</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Del</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Del…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Åbn i %1$s</string>
@@ -276,6 +294,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Gem</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Bogmærk denne side</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Rediger bogmærke</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Gem som PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Slå læsevisning til</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Slå læsevisning fra</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Oversæt side…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Oversat til %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Udskriv…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Ingen udvidelser her</string>
@@ -372,8 +408,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Privatlivserklæring for Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Læs mere i vores privatlivserklæring</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Vi elsker at holde dig sikker</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -582,7 +616,9 @@
<!-- Preference for language -->
<string name="preferences_language">Sprog</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Oversættelse</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Oversættelse</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Oversættelser</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Valg for data</string>
<!-- Preference for data collection -->
@@ -654,10 +690,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Påkrævede</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Valgfrie</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Læse og ændre webstedsdata</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Slet websted</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Tillad for alle websteder</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -686,7 +718,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Hop tilbage til</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Seneste bogmærker</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Seneste bogmærker</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Bogmærker</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Besøgt for nylig</string>
@@ -780,8 +814,6 @@
<string name="preferences_sync_history">Historik</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Bogmærker</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Adgangskoder</string>
<!-- Preference for syncing tabs -->
@@ -808,8 +840,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s på %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Betalingskort</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Betalingsmetoder</string>
<!-- Preference for syncing addresses -->
@@ -825,6 +855,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Faneblad fra %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s-faneblade lukket: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Vis nyligt lukkede faneblade</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Undtagelser</string>
@@ -1746,12 +1784,8 @@
<string name="add_to_homescreen_description_2">Du kan nemt føje dette websted til din enheds startskærm for at have hurtig adgang til det og browse hurtigere med en app-lignende oplevelse.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins og adgangskoder</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Adgangskoder</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Gem logins og adgangskoder</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Gem adgangskoder</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Bed om at gemme</string>
@@ -1766,47 +1800,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Udfyld brugernavne og adgangskoder i andre apps på din enhed.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Tilføj login</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Tilføj adgangskode</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkroniser logins</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synkroniser adgangskoder</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkroniser logins på tværs af enheder</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synkroniser adgangskoder på tværs af enheder</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Gemte logins</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Gemte adgangskoder</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">De logins, du gemmer eller synkroniserer til %s, vises her.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Adgangskoderne, du gemmer i eller synkroniserer med %s vil blive vist her. Alle dine gemte adgangskoder bliver krypteret.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Læs mere om Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Læs mere om synkronisering</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Undtagelser</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins og adgangskoder, der ikke er gemt, vises her.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s gemmer ikke adgangskoder til websteder vist her.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins og adgangskoder vil ikke blive gemt for disse websteder.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s gemmer ikke adgangskoder til disse websteder.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Slet alle undtagelser</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Søg efter logins</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Søg efter adgangskoder</string>
<!-- The header for the site that a login is for -->
@@ -1835,17 +1850,11 @@
<string name="saved_login_reveal_password">Vis adgangskode</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Skjul adgangskode</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lås op for at se dine gemte logins</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Lås op for at se dine gemte adgangskoder</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Gør dine logins og adgangskoder sikre</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Gør dine gemte adgangskoder sikre</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Indstil en pinkode, en adgangskode eller et låsemønster på din enhed for at forhindre, at andre mennesker får adgang til dine gemte logins og adgangskoder, hvis de har adgang til din enhed.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Indstil en pinkode, en adgangskode eller et låsemønster på din enhed for at forhindre, at andre mennesker får adgang til dine gemte adgangskoder, hvis de har adgang til din enhed.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Senere</string>
@@ -1863,9 +1872,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Senest brugt</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Sortér menuen logins</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menuen sorter adgangskoder</string>
@@ -1874,40 +1880,26 @@
<string name="preferences_autofill">Autofyld</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresser</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Betalingskort</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Betalingsmetoder</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gem og autofyld betalingskort</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Gem og udfyld betalingsmetoder</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Data er krypteret</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s krypterer alle betalingsmetoder, du gemmer</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synkroniser kort på tværs af enheder</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synkroniser kort</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Tilføj betalingskort</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Tilføj kort</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Håndter gemte kort</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Håndter kort</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Tilføj adresse</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Håndter adresser</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Gem og autofyld adresser</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Gem og udfyld adresser</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Inkluderer oplysninger såsom telefonnumre, mail- og forsendelsesadresser</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Inkluderer telefonnumre og mailadresser</string>
@@ -1931,8 +1923,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Slet kort</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på, at du vil slette dette betalingskort?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Slet kort?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Slet</string>
@@ -1946,24 +1936,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Gemte kort</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Indtast et gyldigt betalingskortnummer</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Indtast et gyldigt kortnummer</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Udfyld dette felt</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Tilføj navn</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Lås op for at se dine gemte betalingskort</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Beskyt dine betalingskort</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Gør dine gemte betalingsmetoder sikre</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Indstil en pinkode, en adgangskode eller et låsemønster på din enhed for at forhindre, at andre mennesker får adgang til dine gemte betalingskort, hvis de har adgang til din enhed.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Indstil en pinkode, en adgangskode eller et låsemønster på din enhed for at forhindre, at andre mennesker får adgang til dine gemte betalingsmetoder, hvis de har adgang til din enhed.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Indstil nu</string>
@@ -1971,8 +1952,6 @@
<string name="credit_cards_warning_dialog_later">Senere</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Lås din enhed op</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lås op for at anvende gemte informationer om betalingskort</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Lås op for at bruge gemte betalingsmetoder</string>
@@ -1982,12 +1961,6 @@
<string name="addresses_edit_address">Rediger adresse</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Håndter adresser</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Fornavn</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Mellemnavn</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Efternavn</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Navn</string>
<!-- The header for the street address of an address -->
@@ -2013,8 +1986,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Slet adresse</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på, at du vil slette denne adresse?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Slet denne adresse?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Slet</string>
@@ -2113,49 +2084,29 @@
<string name="login_menu_delete_button">Slet</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Rediger</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på, at du vil slette dette login?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Er du sikker på, at du vil slette denne adgangskode?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Slet</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Annuller</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Login-indstillinger</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Adgangskode-indstillinger</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfelt for login’ets webadresse.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Det redigerbare tekstfelt for webadressen.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfelt for login’ets brugernavn.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Det redigerbare tekstfelt for brugernavnet.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfelt for login’ets adgangskode.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Det redigerbare tekstfelt for adgangskoden.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Gem ændringer til login.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Gem ændringer.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Rediger</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Rediger adgangskode</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Tilføj nyt login</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Tilføj adgangskode</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Adgangskode påkrævet</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Indtast en adgangskode</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Brugernavn påkrævet</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Indtast et brugernavn</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Værtsnavn påkrævet</string>
@@ -2505,6 +2456,8 @@
<string name="translations_bottom_sheet_negative_button">Ikke nu</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Vis oprindelig</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Original uoversat side indlæst</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Færdig</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2562,6 +2515,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Luk oversættelsesoversigten</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Nogle indstillinger er midlertidigt utilgængelige.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Oversættelser</string>
@@ -2584,6 +2540,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Vælg et sprog for at håndtere indstillingerne ”oversæt altid“ og ”oversæt aldrig“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Kunne ikke indlæse sprog. Prøv igen senere.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Tilbyd at oversætte (standard)</string>
@@ -2607,6 +2566,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Fjern %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Kunne ikke indlæse websteder. Prøv igen senere.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Slet %1$s?</string>
@@ -2692,7 +2653,9 @@
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Antal faneblade</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktive</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktive</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktive</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inaktive</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2703,6 +2666,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Værktøj til oprettelse af faneblade</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Antal faneblade, der skal oprettes</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Tekstfeltet er tomt</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Indtast kun positive heltal</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Indtast et tal større end nul</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Overskredet det maksimale antal faneblade (%1$s), der kan oprettes i én operation</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Føj til aktive faneblade</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2719,11 +2692,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Privatlivserklæring</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Indsend</string>
+ <string name="micro_survey_submit_button_label">Indsend</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Luk</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Luk</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Tak for tilbagemeldingen!</string>
+ <string name="micro_survey_feedback_confirmation">Tak for tilbagemeldingen!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Meget tilfreds</string>
<!-- Option for likert scale -->
@@ -2735,6 +2708,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Meget utilfreds</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Åbn undersøgelse</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Luk undersøgelse</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Luk</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Logins</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-de/strings.xml b/mobile/android/fenix/app/src/main/res/values-de/strings.xml
index ae6645a6fe..c78b9aa5fa 100644
--- a/mobile/android/fenix/app/src/main/res/values-de/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-de/strings.xml
@@ -202,6 +202,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Add-ons</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Erweiterungen</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Erweiterungen verwalten</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Weitere Erweiterungen entdecken</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Kontoinformationen</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -220,6 +224,8 @@
<string name="browser_menu_open_in_regular_tab">In normalem Tab öffnen</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Zum Startbildschirm hinzufügen</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Zum Startbildschirm hinzufügen…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installieren</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -231,9 +237,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Seite übersetzen</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">In Sammlung speichern…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">In Sammlung speichern</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Teilen</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Teilen…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">In %1$s öffnen</string>
@@ -288,6 +298,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Speichern</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Lesezeichen für diese Seite hinzufügen</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Lesezeichen bearbeiten</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Als PDF speichern…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Leseansicht aktivieren</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Leseansicht deaktivieren</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Seite übersetzen…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Übersetzt in %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Drucken…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Keine Erweiterungen vorhanden</string>
@@ -385,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox-Datenschutzhinweis</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Weitere Informationen finden Sie in unserem Datenschutzhinweis</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Wir schützen Sie gerne</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -595,7 +621,9 @@
<!-- Preference for language -->
<string name="preferences_language">Sprache</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Übersetzung</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Übersetzung</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Übersetzungen</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Datenübermittlung</string>
<!-- Preference for data collection -->
@@ -669,10 +697,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Erforderlich</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Optional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Website-Daten lesen und ändern</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Website löschen</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Für alle Websites erlauben</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -798,8 +822,6 @@
<string name="preferences_sync_history">Chronik</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Lesezeichen</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Passwörter</string>
<!-- Preference for syncing tabs -->
@@ -826,8 +848,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s auf %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditkarten</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Zahlungsmethoden</string>
<!-- Preference for syncing addresses -->
@@ -844,6 +864,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tab von %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s-Tabs geschlossen: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Kürzlich geschlossene Tabs anzeigen</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Ausnahmen</string>
@@ -1797,12 +1825,8 @@
<string name="add_to_homescreen_description_2">Sie können diese Website einfach zum Startbildschirm Ihres Geräts hinzufügen, um unmittelbaren Zugriff darauf zu haben und sie wie eine App zu nutzen.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten und Passwörter</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Passwörter</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten und Passwörter speichern</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Passwörter speichern</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Zum Speichern nachfragen</string>
@@ -1818,46 +1842,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Benutzernamen und Passwörter auf Webseite bei Nutzung von anderen Apps auf Ihrem Gerät automatisch ausfüllen.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten hinzufügen</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Passwort hinzufügen</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten synchronisieren</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Passwörter synchronisieren</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten zwischen Geräten synchronisieren</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Passwörter geräteübergreifend synchronisieren</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Gespeicherte Zugangsdaten</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Gespeicherte Passwörter</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Die Zugangsdaten, die Sie speichern oder mit %s synchronisieren, werden hier angezeigt.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Die Passwörter, die Sie speichern oder mit %s synchronisieren, werden hier aufgelistet. Alle gespeicherten Passwörter werden verschlüsselt.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Erfahren Sie mehr über Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Weitere Informationen über Sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Ausnahmen</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten und Passwörter, die nicht gespeichert werden, werden hier angezeigt.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s speichert keine Passwörter für die hier aufgeführten Websites.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten und Passwörter werden für diese Websites nicht gespeichert.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s speichert keine Passwörter für diese Websites.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Alle Ausnahmen löschen</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Zugangsdaten durchsuchen</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Passwörter durchsuchen</string>
<!-- The header for the site that a login is for -->
@@ -1886,17 +1891,11 @@
<string name="saved_login_reveal_password">Passwort anzeigen</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Passwort verbergen</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Zum Anzeigen Ihrer gespeicherten Zugangsdaten entsperren</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Zum Anzeigen Ihrer gespeicherten Passwörter entsperren</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Sichern Sie Ihre Zugangsdaten und Passwörter</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Sichern Sie Ihre gespeicherten Passwörter</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Richten Sie ein Gerätesperrmuster, eine PIN oder ein Passwort ein, um zu verhindern, dass auf Ihre gespeicherten Zugangsdaten und Passwörter zugegriffen wird, wenn jemand anderes über Ihr Gerät verfügt.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Richten Sie ein Gerätesperrmuster, eine PIN oder ein Passwort ein, um zu verhindern, dass auf Ihre gespeicherten Passwörter zugegriffen wird, wenn jemand anderes über Ihr Gerät verfügt.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Später</string>
@@ -1914,9 +1913,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Zuletzt verwendet</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Menü mit Zugangsdaten sortieren</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menü „Passwörter sortieren“</string>
@@ -1925,41 +1921,27 @@
<string name="preferences_autofill">Automatisch ausfüllen</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adressen</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditkarten</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Zahlungsmethoden</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Autovervollständigung für Kreditkartendaten</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Zahlungsmethoden speichern und ausfüllen</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Daten sind verschlüsselt</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s verschlüsselt alle von Ihnen gespeicherten Zahlungsmethoden</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Karten zwischen Geräten synchronisieren</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Kreditkarten synchronisieren</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditkarte hinzufügen</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Karte hinzufügen</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gespeicherte Karten verwalten</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Karten verwalten</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Adresse hinzufügen</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Adressen verwalten</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Autovervollständigung für Adressen</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Adressen speichern und ausfüllen</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Dies beinhaltetet Nummern, E-Mail- und Lieferadressen</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Enthält Telefonnummern und E-Mail-Adressen</string>
@@ -1983,8 +1965,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Karte löschen</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Soll diese Kreditkarte wirklich gelöscht werden?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Karte löschen?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Löschen</string>
@@ -1998,24 +1978,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Gespeicherte Karten</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Bitte geben Sie eine gültige Kreditkartennummer ein</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Geben Sie eine gültige Kartennummer ein</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Bitte füllen Sie dieses Feld aus</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Fügen Sie einen Namen hinzu</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Zum Anzeigen Ihrer gespeicherten Karten entsperren</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Sichern Sie Ihre Kreditkarten</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Sichern Sie Ihre gespeicherten Zahlungsmethoden</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Richten Sie ein Gerätesperrmuster, eine PIN oder ein Passwort ein, um zu verhindern, dass auf Ihre gespeicherten Karten zugegriffen wird, wenn jemand anderes über Ihr Gerät verfügt.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Richten Sie ein Gerätesperrmuster, eine PIN oder ein Passwort ein, um zu verhindern, dass auf Ihre gespeicherten Zahlungsmethoden zugegriffen wird, wenn jemand anderes über Ihr Gerät verfügt.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Jetzt einrichten</string>
@@ -2024,9 +1995,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Entsperren Sie Ihr Gerät</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Entsperren, um gespeicherte Kreditkartendaten zu verwenden</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Zum Verwenden Ihrer gespeicherten Zahlungsmethoden entsperren</string>
<!-- Title of the "Add address" screen -->
@@ -2035,12 +2003,6 @@
<string name="addresses_edit_address">Adresse bearbeiten</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Adressen verwalten</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Vorname</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Zweiter Vorname</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Nachname</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Name</string>
<!-- The header for the street address of an address -->
@@ -2067,8 +2029,6 @@
<string name="addressess_delete_address_button">Adresse löschen</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Soll diese Adresse wirklich gelöscht werden?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Diese Adresse löschen?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Löschen</string>
@@ -2166,49 +2126,29 @@
<string name="login_menu_delete_button">Entfernen</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Bearbeiten</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Sollen diese Zugangsdaten wirklich gelöscht werden?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Soll dieses Passwort wirklich gelöscht werden?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Löschen</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Abbrechen</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Optionen für Zugangsdaten</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Passwort-Optionen</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Das bearbeitbare Textfeld für die Internetadresse der Zugangsdaten.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Das bearbeitbare Textfeld für die Adresse der Website.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Das bearbeitbare Textfeld für den Benutzernamen der Zugangsdaten.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Das bearbeitbare Textfeld für den Benutzernamen.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Das bearbeitbare Textfeld für das Passwort der Zugangsdaten.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Das bearbeitbare Textfeld für das Passwort.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Änderungen an Zugangsdaten speichern.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Änderungen speichern.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Bearbeiten</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Passwort bearbeiten</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Neue Zugangsdaten hinzufügen</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Passwort hinzufügen</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Passwort erforderlich</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Passwort eingeben</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Benutzername erforderlich</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Benutzername eingeben</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Hostname erforderlich</string>
@@ -2614,6 +2554,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Seite „Übersetzungen“ schließen</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Einige Einstellungen sind vorübergehend nicht verfügbar.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Übersetzungen</string>
@@ -2636,6 +2579,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Wählen Sie eine Sprache aus, um die Einstellungen für „Immer übersetzen“ und „Nie übersetzen“ zu verwalten.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Sprachen konnten nicht geladen werden. Bitte versuchen Sie es später erneut.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Übersetzung anbieten (Standard)</string>
@@ -2658,6 +2604,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s entfernen</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Websites konnten nicht geladen werden. Bitte versuchen Sie es später erneut.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s löschen?</string>
@@ -2735,13 +2683,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Rückwärts navigieren</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Debug-Schublade öffnen</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Tab-Werkzeuge</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Tab-Anzahl</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktiv</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktiv</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktiv</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inaktiv</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2752,6 +2705,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Werkzeug zur Tab-Erstellung</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Zu erstellende Tab-Anzahl</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Textfeld ist leer</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Bitte geben Sie nur positive ganze Zahlen ein</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Bitte geben Sie eine Zahl größer als 0 ein</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Die maximale Anzahl an Tabs (%1$s) wurde überschritten, die in einem Arbeitsschritt erzeugt werden kann</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Zu aktiven Tabs hinzufügen</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2768,11 +2731,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Datenschutzhinweis</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Absenden</string>
+ <string name="micro_survey_submit_button_label">Absenden</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Schließen</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Schließen</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Danke für Ihr Feedback!</string>
+ <string name="micro_survey_feedback_confirmation">Danke für Ihr Feedback!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Sehr zufrieden</string>
<!-- Option for likert scale -->
@@ -2784,6 +2747,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Sehr unzufrieden</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Umfrage öffnen</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Umfrage schließen</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Schließen</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Zugangsdaten</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-dsb/strings.xml b/mobile/android/fenix/app/src/main/res/values-dsb/strings.xml
index 45de14681f..de2fba4cb7 100644
--- a/mobile/android/fenix/app/src/main/res/values-dsb/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-dsb/strings.xml
@@ -200,6 +200,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Dodanki</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Rozšyrjenja</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Rozšyrjenja zastojaś</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Dalšne rozšyrjenja namakaś</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Kontowe informacije</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -218,6 +222,8 @@
<string name="browser_menu_open_in_regular_tab">W normalnem rejtariku wócyniś</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Startowej wobrazowce pśidaś</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Startowej wobrazowce pśidaś…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalěrowaś</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -229,9 +235,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Bok pśełožyś</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Do zběrki składowaś…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Do zběrki składowaś</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Źěliś</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Źěliś…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">W %1$s wócyniś</string>
@@ -284,6 +294,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Składowaś</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Toś ten bok ako cytańske znamje składowaś</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Cytańske znamje wobźěłaś</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Ako PDF składowaś…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Cytański naglěd zmóžniś</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Cytański naglěd znjemóžniś</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Bok pśełožyś…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Pśełožony do rěcy %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Śišćaś…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Žedne rozšyrjenja how</string>
@@ -379,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Powěźeńka priwatnosći Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Zgóńśo wěcej w našej powěźeńce priwatnosći</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Šćitamy was rad</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -588,7 +614,9 @@
<!-- Preference for language -->
<string name="preferences_language">Rěc</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Pśełožk</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Pśełožk</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Pśełožki</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Datowy wuběrki</string>
<!-- Preference for data collection -->
@@ -661,10 +689,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Trjebny</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Na žycenje</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Websedłowe daty cytaś a změniś</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Websedło wulašowaś</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Za wšykne sedła dowóliś</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -790,8 +814,6 @@
<string name="preferences_sync_history">Historija</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Cytańske znamjenja</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Gronidła</string>
<!-- Preference for syncing tabs -->
@@ -818,8 +840,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s wót %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditowe kórty</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Płaśeńske metody</string>
<!-- Preference for syncing addresses -->
@@ -835,6 +855,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Rajtark z %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Rejtariki %1$s zacynjone: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Rowno zacynjone rejtariki pokazaś</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Wuwześa</string>
@@ -1763,12 +1791,8 @@
<string name="add_to_homescreen_description_2">Móžośo startowej wobrazowce swójogo rěda toś to websedło lažko pśidaś, aby direktny pśistup měł a malsnjej z dožywjenim nałoženja pśeglědował.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja a gronidła</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Gronidła</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja a gronidła składowaś</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Gronidła składowaś</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Pśed składowanim se pšašaś</string>
@@ -1783,46 +1807,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Wužywaŕske mjenja a gronidła w drugich nałoženjach na wašom rěźe zasajźiś.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenje pśidaś</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Gronidło pśidaś</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja synchronizěrowaś</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Gronidła synchronizěrowaś</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja mjazy rědami synchronizěrowaś</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Gronidła pśez rědy synchronizěrowaś</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Skłaźone pśizjawjenja</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Skłaźone gronidła</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja, kótarež składujośo abo z %s synchronizěrujośo, se how pokažu.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Gronidła, kótarež składujośo abo z %s synchronizěrujośo, se how nalicyju. Wšykne gronidła, kótarež składujośo, se koděruju.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Zgóńśo wěcej wó Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Zgóńśo wěcej wó sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Wuwześa</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja a gronidła, kótarež se njeskładuju, se how pokažu.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s gronidła za sedła njeskładujo, kótarež su how nalicone.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja a gronidła se za toś te sedła njeskładuju.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s gronidła za toś te sedła njeskładujo.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Wšykne wuwześa wulašowaś</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjenja pytaś</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Gronidła pśepytaś</string>
<!-- The header for the site that a login is for -->
@@ -1852,17 +1857,11 @@
<string name="saved_login_reveal_password">Gronidło pokazaś</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Gronidła schowaś</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Za zwobraznjowanje wašych skłaźonych pśizjawjenjow wótwóriś</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Za zwobraznjowanje wašych skłaźonych kreditowych gronidłow wótwóriś</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Zawěsććo swóje pśizjawjenja a gronidła</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Zawěsććo swóje skłaźone gronidła</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastajśo rědowy zastajeński muster, PIN abo gronidło, aby pśistupoju k swójim skłaźonym pśizjawjenjam a gronidłam zajźował, jolic něchten drugi ma waš rěd.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Nastajśo rědowy zastajeński muster, PIN abo gronidło, aby pśistupoju k swójim skłaźonym gronidłam zajźował, jolic něchten drugi ma waš rěd.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Pózdźej</string>
@@ -1880,8 +1879,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Mjenju (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Slědnem wužyśu</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Meni pśizjawjeńskich datow sortěrowaś</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Meni „Gronidła sortěrowaś“</string>
@@ -1891,41 +1888,27 @@
<string name="preferences_autofill">Awtomatiski wupołniś</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adrese</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditowe kórty</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Płaśeńske metody</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kórty składowaś a awtomatiski wupołniś</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Płaśeńske metody składowaś a wupołniś</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Daty su skoděrowane</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s wšykne płaśeńske metody koděrujo, kótarež składujośo</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Kórty pśez rědy synchronizěrowaś</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Kórty synchronizěrowaś</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditowu kórtu pśidaś</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Kórtu pśidaś</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Skłaźone kórty zastojaś</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Kórty zastojaś</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Adresu pśidaś</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Adrese zastojaś</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Adrese składowaś a awtomatiski wupołniś</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Adrese składowaś a wupołniś</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Informacije ako licby, e-mailowe a rozpósłańske adrese zapśimjeś</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Wopśimujo telefonowe numery a e-mailowe adrese</string>
@@ -1949,8 +1932,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Kórtu wulašowaś</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Cośo napšawdu toś tu kreditowu kórtu lašowaś?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Kórtu wulašowaś?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Lašowaś</string>
@@ -1964,24 +1945,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Skłaźone kórty</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Pšosym zapódajśo płaśiwy numer kreditoweje kórty</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Zapódajśo płaśiwy kórtowy numer</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Pšosym wupołńśo toś to pólo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Pśidajśo mě</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Za zwobraznjowanje wašych skłaźonych kreditowych kórtow wótwóriś</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditowe kórty zawěsćiś</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Zawěsććo swóje skłaźone płaśeńske metody</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastajśo rědowy zastajeński muster, PIN abo gronidło, aby pśistupoju k swójim skłaźonym kreditowym kórtam zajźował, jolic něchten drugi ma waš rěd.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Nastajśo rědowy zastajeński muster, PIN abo gronidło, aby pśistupoju k swójim skłaźonym płaśeńskim metodam zajźował, jolic něchten drugi ma waš rěd.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Něnto konfigurěrowaś</string>
@@ -1990,9 +1962,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Wótwóŕśo swój rěd</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Blokěrowanje wótpóraś, aby se skłaźone informacije kreditoweje kórty wužywali</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Wótwóriś, aby wy skłaźone płaśeńske metody wužywał</string>
<!-- Title of the "Add address" screen -->
@@ -2001,12 +1970,6 @@
<string name="addresses_edit_address">Adresu wobźěłaś</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Adrese zastojaś</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Pśedmě</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Druge pśedmě</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Familijowe mě</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Mě</string>
<!-- The header for the street address of an address -->
@@ -2033,8 +1996,6 @@
<string name="addressess_delete_address_button">Adresu lašowaś</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Cośo napšawdu toś tu adresu wulašowaś?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Toś tu adresu lašowaś?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Lašowaś</string>
@@ -2132,49 +2093,29 @@
<string name="login_menu_delete_button">Lašowaś</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Wobźěłaś</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Cośo napšawdu toś to pśizjawjenje lašowaś?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Cośo napšawdu toś to gronidło lašowaś?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Lašowaś</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Pśetergnuś</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Pśizjawjeńske nastajenja</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Gronidłowe nastajenja</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Wobźěłujobne tekstowe pólo za webadresu pśizjawjenja.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Wobźěłujobne tekstowe pólo za adresu websedła.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Wobźěłujobne tekstowe pólo za wužywaŕske mě pśizjawjenja.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Wobźěłujobne tekstowe pólo za wužywaŕske mě.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Wobźěłujobne tekstowe pólo za gronidło pśizjawjenja.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Wobźěłujobne tekstowe pólo za gronidło.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Změny pśizjawjenja składowaś</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Změny składowaś.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Wobźěłaś</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Gronidło wobźěłaś</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Nowe pśizjawjenje pśidaś</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Gronidło pśidaś</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Gronidło trěbne</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Gronidło zapódaś</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Wužywaŕske mě trěbne.</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Wužywaŕske mě zapódaś</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Hostmě trěbne.</string>
@@ -2583,6 +2524,9 @@ To buźo jano pomagaś, kwalitu pógódnośenjow pósuźiś, nic kwalitu produkt
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Bok Pśełožki zacyniś</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Někotare nastajenja njejsu nachylu k dispoziciji.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Pśełožki</string>
@@ -2605,6 +2549,9 @@ To buźo jano pomagaś, kwalitu pógódnośenjow pósuźiś, nic kwalitu produkt
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Wubjeŕśo rěc, aby nastajeni „pśecej pśełožyś“ a „nigda njepśełožyś“ zastojał.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Rěcy njejsu se dali zacytaś. Pšosym wopytajśo pózdźej hyšći raz.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Pśełožk póbitowaś (standard)</string>
@@ -2628,6 +2575,8 @@ To buźo jano pomagaś, kwalitu pógódnośenjow pósuźiś, nic kwalitu produkt
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s wótwónoźeś</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Sedła njejsu se dali zacytaś. Pšosym wopytajśo pózdźej hyšći raz.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s lašowaś?</string>
@@ -2705,13 +2654,18 @@ To buźo jano pomagaś, kwalitu pógódnośenjow pósuźiś, nic kwalitu produkt
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Slědk nawigěrowaś</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Debug drawer wócyniś</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Rejtarikowe rědy</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Licba rejtarikow</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktiwny</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktiwny</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktiwny</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Njeaktiwny</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2722,6 +2676,16 @@ To buźo jano pomagaś, kwalitu pógódnośenjow pósuźiś, nic kwalitu produkt
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Rěd za napóranje rejtarikow</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Licba rejtarikow, kótarež se maju napóraś</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Tekstowe pólo jo prozne</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Pšosym zapódajśo jano pozitiwne cełe licby</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Pšosym zapódajśo licbu, kótaraž jo wětša ako nula</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Maksimalna licba rejtarikow (%1$s), kótarež daju se w jadnej operaciji generěrowaś, jo pśekšocona</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Aktiwnym rejtarikam pśidaś</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2738,11 +2702,11 @@ To buźo jano pomagaś, kwalitu pógódnośenjow pósuźiś, nic kwalitu produkt
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Powěźeńka priwatnosći</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Wótpósłaś</string>
+ <string name="micro_survey_submit_button_label">Wótpósłaś</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Zacyniś</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Zacyniś</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Źěkujomy se za waš komentar!</string>
+ <string name="micro_survey_feedback_confirmation">Źěkujomy se za waš komentar!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Wjelgin spokojom</string>
<!-- Option for likert scale -->
@@ -2754,6 +2718,14 @@ To buźo jano pomagaś, kwalitu pógódnośenjow pósuźiś, nic kwalitu produkt
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Wjelgin njespokojom</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Napšašowanje wócyniś</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Napšašowanje zacyniś</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Zacyniś</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Pśizjawjenja</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-el/strings.xml b/mobile/android/fenix/app/src/main/res/values-el/strings.xml
index ede381ca29..cf34620a47 100644
--- a/mobile/android/fenix/app/src/main/res/values-el/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-el/strings.xml
@@ -205,6 +205,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Πρόσθετα</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Επεκτάσεις</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Διαχείριση επεκτάσεων</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Ανακαλύψτε περισσότερες επεκτάσεις</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Πληροφορίες λογαριασμού</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -223,6 +227,8 @@
<string name="browser_menu_open_in_regular_tab">Άνοιγμα σε κανονική καρτέλα</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Προσθήκη στην αρχική οθόνη</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Προσθήκη στην αρχική οθόνη…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Εγκατάσταση</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -235,9 +241,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Μετάφραση σελίδας</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Αποθήκευση σε συλλογή…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Αποθήκευση στη συλλογή</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Κοινή χρήση</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Κοινή χρήση…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Άνοιγμα σε %1$s</string>
@@ -291,6 +301,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Αποθήκευση</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Προσθήκη στους σελιδοδείκτες</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Επεξεργασία σελιδοδείκτη</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Αποθήκευση ως PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Ενεργοποίηση προβολής ανάγνωσης</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Απενεργοποίηση προβολής ανάγνωσης</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Μετάφραση σελίδας…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Μεταφράστηκε σε %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Εκτύπωση…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Δεν υπάρχουν επεκτάσεις</string>
@@ -388,8 +416,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Σημείωση απορρήτου του Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Μάθετε περισσότερα στη σημείωση απορρήτου μας</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Μας αρέσει να σας προστατεύουμε</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -600,7 +626,9 @@
<!-- Preference for language -->
<string name="preferences_language">Γλώσσα</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Μετάφραση</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Μετάφραση</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Μεταφράσεις</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Επιλογές δεδομένων</string>
<!-- Preference for data collection -->
@@ -672,10 +700,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Απαιτείται</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Προαιρετικό</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Ανάγνωση και αλλαγή δεδομένων ιστοτόπων</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Διαγραφή ιστοτόπου</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Αποδοχή για όλους τους ιστοτόπους</string>
@@ -804,8 +828,6 @@
<string name="preferences_sync_history">Ιστορικό</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Σελιδοδείκτες</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Συνδέσεις</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Κωδικοί πρόσβασης</string>
<!-- Preference for syncing tabs -->
@@ -832,8 +854,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s στο %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Πιστωτικές κάρτες</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Μέθοδοι πληρωμής</string>
<!-- Preference for syncing addresses -->
@@ -849,6 +869,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Καρτέλα από %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Έκλεισαν %2$d καρτέλες του %1$s</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Προβολή πρόσφατα κλεισμένων καρτελών</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Εξαιρέσεις</string>
@@ -1785,12 +1813,8 @@
<string name="add_to_homescreen_description_2">Μπορείτε εύκολα να προσθέσετε αυτόν τον ιστότοπο στην αρχική οθόνη για άμεση πρόσβαση και ταχύτερη περιήγηση, σαν να ήταν εφαρμογή.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Συνδέσεις και κωδικοί πρόσβασης</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Κωδικοί πρόσβασης</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Αποθήκευση συνδέσεων και κωδικών πρόσβασης</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Αποθήκευση κωδικών πρόσβασης</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Ερώτηση για αποθήκευση</string>
@@ -1806,46 +1830,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Συμπλήρωση στοιχείων σύνδεσης σε άλλες εφαρμογές της συσκευής σας.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Προσθήκη σύνδεσης</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Προσθήκη κωδικού πρόσβασης</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Συγχρονισμός συνδέσεων</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Συγχρονισμός κωδικών πρόσβασης</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Συγχρονισμός συνδέσεων μεταξύ συσκευών</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Συγχρονισμός κωδικών πρόσβασης μεταξύ των συσκευών σας</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Αποθηκευμένες συνδέσεις</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Αποθηκευμένοι κωδικοί πρόσβασης</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Οι συνδέσεις που αποθηκεύετε ή συγχρονίζετε στο %s θα εμφανίζονται εδώ.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Οι κωδικοί πρόσβασης που αποθηκεύετε ή συγχρονίζετε στο %s θα εμφανίζονται εδώ. Όλοι οι κωδικοί πρόσβασης που αποθηκεύετε κρυπτογραφούνται.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Μάθετε περισσότερα σχετικά με το Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Μάθετε περισσότερα σχετικά με τον συγχρονισμό</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Εξαιρέσεις</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Εδώ εμφανίζονται οι συνδέσεις και οι κωδικοί πρόσβασης που δεν αποθηκεύονται.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">Το %s δεν θα αποθηκεύει κωδικούς πρόσβασης για τους ιστοτόπους που αναφέρονται εδώ.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Δεν θα αποθηκεύονται στοιχεία σύνδεσης για τους εξής ιστοτόπους.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">Το %s δεν θα αποθηκεύει κωδικούς πρόσβασης για αυτούς τους ιστοτόπους.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Διαγραφή όλων των εξαιρέσεων</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Αναζήτηση συνδέσεων</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Αναζήτηση κωδικών πρόσβασης</string>
<!-- The header for the site that a login is for -->
@@ -1874,17 +1879,11 @@
<string name="saved_login_reveal_password">Εμφάνιση κωδικού πρόσβασης</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Απόκρυψη κωδικού πρόσβασης</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ξεκλειδώστε για να δείτε τις αποθηκευμένες συνδέσεις σας</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Ξεκλειδώστε για να δείτε τους αποθηκευμένους κωδικούς πρόσβασής σας</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Προστασία στοιχείων σύνδεσης</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Προστασία των αποθηκευμένων κωδικών πρόσβασής σας</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ορίστε ένα μοτίβο κλειδώματος συσκευής, ένα ΡΙΝ ή έναν κωδικό πρόσβασης για προστασία των αποθηκευμένων στοιχείων σύνδεσης, σε περίπτωση που κάποιος τρίτος αποκτήσει πρόσβαση στη συσκευή σας.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Ορίστε ένα μοτίβο κλειδώματος συσκευής, ένα ΡΙΝ ή έναν κωδικό πρόσβασης για την προστασία των αποθηκευμένων κωδικών πρόσβασής σας, σε περίπτωση που κάποιος τρίτος αποκτήσει πρόσβαση στη συσκευή σας.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Αργότερα</string>
@@ -1901,9 +1900,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Τελευταία χρήση</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ταξινόμηση μενού σύνδεσης</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Μενού ταξινόμησης κωδικών πρόσβασης</string>
@@ -1912,42 +1908,28 @@
<string name="preferences_autofill">Αυτόματη συμπλήρωση</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Διευθύνσεις</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Πιστωτικές κάρτες</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Μέθοδοι πληρωμής</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Αποθήκευση και αυτόματη συμπλήρωση στοιχείων καρτών</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Αποθήκευση και συμπλήρωση μεθόδων πληρωμής</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Τα δεδομένα κρυπτογραφούνται</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">Το %s κρυπτογραφεί όλες τις μεθόδους πληρωμής που αποθηκεύετε</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Συγχρονισμός καρτών μεταξύ συσκευών</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Συγχρονισμός καρτών</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Προσθήκη πιστωτικής κάρτας</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Προσθήκη κάρτας</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Διαχείριση αποθηκευμένων καρτών</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Διαχείριση καρτών</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Προσθήκη διεύθυνσης</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Διαχείριση διευθύνσεων</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Αποθήκευση και αυτόματη συμπλήρωση διευθύνσεων</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Αποθήκευση και συμπλήρωση διευθύνσεων</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Συμπεριλάβετε πληροφορίες, όπως αριθμούς, email και διευθύνσεις αποστολής</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Περιλαμβάνει αριθμούς τηλεφώνου και διευθύνσεις email</string>
@@ -1971,8 +1953,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Διαγραφή κάρτας</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Θέλετε σίγουρα να διαγράψετε αυτήν την πιστωτική κάρτα;</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Διαγραφή κάρτας;</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Διαγραφή</string>
@@ -1986,24 +1966,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Αποθηκευμένες κάρτες</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Παρακαλώ εισαγάγετε έναν έγκυρο αριθμό πιστωτικής κάρτας</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Εισαγάγετε έγκυρο αριθμό κάρτας</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Παρακαλώ συμπληρώστε αυτό το πεδίο</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Προσθήκη ονόματος</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Ξεκλειδώστε για να δείτε τις αποθηκευμένες κάρτες σας</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Ασφαλίστε τις πιστωτικές κάρτες σας</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Προστασία των αποθηκευμένων μεθόδων πληρωμής σας</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ορίστε ένα μοτίβο κλειδώματος συσκευής, ένα ΡΙΝ ή έναν κωδικό πρόσβασης για την προστασία των αποθηκευμένων πιστωτικών καρτών σας, σε περίπτωση που κάποιος τρίτος αποκτήσει πρόσβαση στη συσκευή σας.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Ορίστε ένα μοτίβο κλειδώματος της συσκευής, ένα ΡΙΝ ή έναν κωδικό πρόσβασης για την προστασία των αποθηκευμένων καρτών σας, σε περίπτωση που κάποιος τρίτος αποκτήσει πρόσβαση στη συσκευή σας.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Ρύθμιση τώρα</string>
@@ -2012,8 +1983,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Ξεκλειδώστε τη συσκευή σας</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ξεκλειδώστε για χρήση των στοιχείων πιστωτικής κάρτας</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Ξεκλειδώστε για χρήση των αποθηκευμένων μεθόδων πληρωμής</string>
@@ -2023,12 +1992,6 @@
<string name="addresses_edit_address">Επεξεργασία διεύθυνσης</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Διαχείριση διευθύνσεων</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Όνομα</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Μεσαίο όνομα</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Επώνυμο</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Όνομα</string>
<!-- The header for the street address of an address -->
@@ -2055,8 +2018,6 @@
<string name="addressess_delete_address_button">Διαγραφή διεύθυνσης</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Θέλετε σίγουρα να διαγράψετε αυτήν τη διεύθυνση;</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Διαγραφή διεύθυνσης;</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Διαγραφή</string>
@@ -2157,49 +2118,29 @@
<string name="login_menu_delete_button">Διαγραφή</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Επεξεργασία</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Θέλετε σίγουρα να διαγράψετε αυτή τη σύνδεση;</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Θέλετε σίγουρα να διαγράψετε αυτόν τον κωδικό πρόσβασης;</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Διαγραφή</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Ακύρωση</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Επιλογές σύνδεσης</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Επιλογές κωδικών πρόσβασης</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Το επεξεργάσιμο πεδίο κειμένου της διεύθυνσης ιστού της σύνδεσης.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Το επεξεργάσιμο πεδίο κειμένου της διεύθυνσης ιστοτόπου.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Το επεξεργάσιμο πεδίο κειμένου για το όνομα χρήστη της σύνδεσης.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Το επεξεργάσιμο πεδίο κειμένου για το όνομα χρήστη.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Το επεξεργάσιμο πεδίο κειμένου για τον κωδικό πρόσβασης της σύνδεσης.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Το επεξεργάσιμο πεδίο κειμένου για τον κωδικό πρόσβασης.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Αποθήκευση αλλαγών στη σύνδεση.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Αποθήκευση αλλαγών.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Επεξεργασία</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Επεξεργασία κωδικού πρόσβασης</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Προσθήκη νέας σύνδεσης</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Προσθήκη κωδικού πρόσβασης</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Απαιτείται κωδικός πρόσβασης</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Εισαγάγετε έναν κωδικό πρόσβασης</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Απαιτείται όνομα χρήστη</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Εισαγάγετε ένα όνομα χρήστη</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Απαιτείται όνομα κεντρικού υπολογιστή</string>
@@ -2548,6 +2489,8 @@
<string name="translations_bottom_sheet_negative_button">Όχι τώρα</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Εμφάνιση πρωτότυπου</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Φορτώθηκε η αρχική, αμετάφραστη σελίδα</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Τέλος</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2605,6 +2548,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Κλείσιμο σελίδας μεταφράσεων</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Ορισμένες ρυθμίσεις δεν είναι προσωρινά διαθέσιμες.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Μεταφράσεις</string>
@@ -2628,6 +2574,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Επιλέξτε μια γλώσσα για να διαχειριστείτε τις προτιμήσεις «πάντα μετάφραση» και «ποτέ μετάφραση».</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Δεν ήταν δυνατή η φόρτωση των γλωσσών. Ελέγξτε ξανά αργότερα.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Πρόταση για μετάφραση (προεπιλογή)</string>
@@ -2651,6 +2600,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Αφαίρεση %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Δεν ήταν δυνατή η φόρτωση των ιστοτόπων. Ελέγξτε ξανά αργότερα.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Διαγραφή του %1$s;</string>
@@ -2728,13 +2679,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Πλοήγηση προς τα πίσω</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Άνοιγμα μενού εντοπισμού σφαλμάτων</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Εργαλεία καρτελών</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Αριθμός καρτελών</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Ενεργές</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Ενεργές</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Ενεργές</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Ανενεργές</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2745,6 +2701,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Εργαλείο δημιουργίας καρτελών</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Πλήθος καρτελών προς δημιουργία</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Το πεδίο κειμένου είναι κενό</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Παρακαλώ εισαγάγετε μόνο θετικούς ακέραιους αριθμούς</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Παρακαλώ εισαγάγετε έναν αριθμό μεγαλύτερο του μηδέν</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Υπέρβαση του μέγιστου αριθμού καρτελών (%1$s) που μπορούν να δημιουργηθούν με μία ενέργεια</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Προσθήκη στις ενεργές καρτέλες</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2761,11 +2727,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Σημείωση απορρήτου</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Υποβολή</string>
+ <string name="micro_survey_submit_button_label">Υποβολή</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Κλείσιμο</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Κλείσιμο</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Ευχαριστούμε για τα σχόλιά σας!</string>
+ <string name="micro_survey_feedback_confirmation">Ευχαριστούμε για τα σχόλιά σας!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Πολύ ικανοποιημένος/-η</string>
@@ -2778,6 +2744,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Πολύ δυσαρεστημένος/-η</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Άνοιγμα έρευνας</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Κλείσιμο έρευνας</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Κλείσιμο</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Συνδέσεις</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-en-rCA/strings.xml b/mobile/android/fenix/app/src/main/res/values-en-rCA/strings.xml
index 5ec62ac882..dac62c0821 100644
--- a/mobile/android/fenix/app/src/main/res/values-en-rCA/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-en-rCA/strings.xml
@@ -200,6 +200,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Add-ons</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensions</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Manage extensions</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Discover more extensions</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Account info</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -218,6 +222,8 @@
<string name="browser_menu_open_in_regular_tab">Open in regular tab</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Add to Home screen</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Add to Home screen…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Install</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -229,9 +235,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Translate page</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Save to collection…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Save to collection</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Share</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Share…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Open in %1$s</string>
@@ -283,6 +293,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Save</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Bookmark this page</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Edit bookmark</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Save as PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Turn on Reader View</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Turn off Reader View</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Translate page…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Translated to %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Print…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">No extensions here</string>
@@ -377,8 +405,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox privacy notice</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Learn more in our privacy notice</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">We love keeping you safe</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -585,7 +611,9 @@
<!-- Preference for language -->
<string name="preferences_language">Language</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Translation</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Translation</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Translations</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Data choices</string>
<!-- Preference for data collection -->
@@ -658,10 +686,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Required</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Optional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Read and change website data</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Delete website</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Allow for all sites</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -787,8 +811,6 @@
<string name="preferences_sync_history">History</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Bookmarks</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Passwords</string>
<!-- Preference for syncing tabs -->
@@ -815,8 +837,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s on %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Credit cards</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Payment methods</string>
<!-- Preference for syncing addresses -->
@@ -832,6 +852,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tab from %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s tabs closed: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">View recently closed tabs</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Exceptions</string>
@@ -1751,12 +1779,8 @@
<string name="add_to_homescreen_description_2">You can easily add this website to your device’s Home screen to have instant access and browse faster with an app-like experience.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins and passwords</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Passwords</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Save logins and passwords</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Save passwords</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Ask to save</string>
@@ -1771,46 +1795,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Fill usernames and passwords in other apps on your device.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Add login</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Add password</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sync logins</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sync passwords</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sync logins across devices</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sync passwords across devices</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Saved logins</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Saved passwords</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">The logins you save or sync to %s will show up here.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">The passwords you save or sync to %s will be listed here. All passwords you save are encrypted.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Learn more about Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Learn more about sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Exceptions</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins and passwords that are not saved will be shown here.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s won’t save passwords for sites listed here.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins and passwords will not be saved for these sites.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s won’t save passwords for these sites.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Delete all exceptions</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Search logins</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Search passwords</string>
<!-- The header for the site that a login is for -->
@@ -1839,17 +1844,11 @@
<string name="saved_login_reveal_password">Show password</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Hide password</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Unlock to view your saved logins</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Unlock to view your saved passwords</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Secure your logins and passwords</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Secure your saved passwords</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Set up a device lock pattern, PIN, or password to protect your saved logins and passwords from being accessed if someone else has your device.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Set up a device lock pattern, PIN, or password to protect your saved passwords from being accessed if someone else has your device.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Later</string>
@@ -1866,8 +1865,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Name (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Last used</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Sort logins menu</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Sort passwords menu</string>
@@ -1877,29 +1874,19 @@
<string name="preferences_autofill">Autofill</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Addresses</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Credit cards</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Payment methods</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Save and autofill cards</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Save and fill payment methods</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Data is encrypted</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s encrypts all payment methods you save</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sync cards across devices</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sync cards</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Add credit card</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Add card</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Manage saved cards</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Manage cards</string>
<!-- Preference option for adding an address -->
@@ -1907,12 +1894,8 @@
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Manage addresses</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Save and autofill addresses</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Save and fill addresses</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Include information like numbers, email and shipping addresses</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Includes phone numbers and email addresses</string>
@@ -1936,8 +1919,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Delete card</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Are you sure you want to delete this credit card?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Delete card?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Delete</string>
@@ -1951,24 +1932,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Saved cards</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Please enter a valid credit card number</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Enter a valid card number</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Please fill out this field</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Add a name</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Unlock to view your saved cards</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Secure your credit cards</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Secure your saved payment methods</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Set up a device lock pattern, PIN, or password to protect your saved credit cards from being accessed if someone else has your device.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Set up a device lock pattern, PIN, or password to protect your saved payment methods from being accessed if someone else has your device.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Set up now</string>
@@ -1976,8 +1948,6 @@
<string name="credit_cards_warning_dialog_later">Later</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Unlock your device</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Unlock to use stored credit card information</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Unlock to use saved payment methods</string>
@@ -1987,12 +1957,6 @@
<string name="addresses_edit_address">Edit address</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Manage addresses</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">First Name</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Middle Name</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Last Name</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Name</string>
<!-- The header for the street address of an address -->
@@ -2019,8 +1983,6 @@
<string name="addressess_delete_address_button">Delete address</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Are you sure you want to delete this address?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Delete this address?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Delete</string>
@@ -2118,49 +2080,29 @@
<string name="login_menu_delete_button">Delete</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Edit</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Are you sure you want to delete this login?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Are you sure you want to delete this password?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Delete</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancel</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Login options</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Password options</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">The editable text field for the web address of the login.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">The editable text field for the website address.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">The editable text field for the username of the login.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">The editable text field for the username.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">The editable text field for the password of the login.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">The editable text field for the password.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Save changes to login.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Save changes.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Edit</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Edit password</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Add new login</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Add password</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Password required</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Enter a password</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Username required</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Enter a username</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Hostname required</string>
@@ -2566,6 +2508,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Close Translations sheet</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Some settings are temporarily unavailable.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Translations</string>
@@ -2588,6 +2533,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Select a language to manage ”always translate“ and ”never translate“ preferences.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Couldn’t load languages. Please check back later.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Offer to translate (default)</string>
@@ -2610,6 +2558,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Remove %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Couldn’t load sites. Please check back later.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Delete %1$s?</string>
@@ -2687,13 +2637,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Navigate back</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Open debug drawer</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Tab Tools</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Tab count</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Active</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Active</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Active</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactive</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2704,6 +2659,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Tab creation tool</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Tab quantity to create</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Text field is empty</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Please enter positive integers only</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Please enter a number greater than zero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Exceeded the maximum number of tabs (%1$s) that can be generated in one operation</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Add to active tabs</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2720,11 +2685,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Privacy Notice</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Submit</string>
+ <string name="micro_survey_submit_button_label">Submit</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Close</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Close</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Thanks for your feedback!</string>
+ <string name="micro_survey_feedback_confirmation">Thanks for your feedback!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Very Satisfied</string>
<!-- Option for likert scale -->
@@ -2736,6 +2701,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Very Dissatisfied</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Open survey</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Close survey</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Close</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Logins</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-en-rGB/strings.xml b/mobile/android/fenix/app/src/main/res/values-en-rGB/strings.xml
index b04058b493..8b41ad2e50 100644
--- a/mobile/android/fenix/app/src/main/res/values-en-rGB/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-en-rGB/strings.xml
@@ -198,6 +198,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Add-ons</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensions</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Manage extensions</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Discover more extensions</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Account info</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -216,6 +220,8 @@
<string name="browser_menu_open_in_regular_tab">Open in regular tab</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Add to Home screen</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Add to Home screen…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Install</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -227,9 +233,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Translate page</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Save to collection…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Save to collection</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Share</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Share…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Open in %1$s</string>
@@ -283,6 +293,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Save</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Bookmark this page</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Edit bookmark</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Save as PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Turn on Reader View</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Turn off Reader View</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Translate page…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Translated to %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Print…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">No extensions here</string>
@@ -379,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox privacy notice</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Learn more in our privacy notice</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">We love keeping you safe</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -589,7 +615,9 @@
<!-- Preference for language -->
<string name="preferences_language">Language</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Translation</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Translation</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Translations</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Data choices</string>
<!-- Preference for data collection -->
@@ -662,10 +690,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Required</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Optional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Read and change web site data</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Delete web site</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Allow for all sites</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -790,8 +814,6 @@
<string name="preferences_sync_history">History</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Bookmarks</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Passwords</string>
<!-- Preference for syncing tabs -->
@@ -818,8 +840,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s on %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Credit cards</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Payment methods</string>
<!-- Preference for syncing addresses -->
@@ -835,6 +855,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tab from %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s tabs closed: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">View recently closed tabs</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Exceptions</string>
@@ -1756,12 +1784,8 @@
<string name="add_to_homescreen_description_2">You can easily add this web site to your device’s Home screen to have instant access and browse faster with an app-like experience.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins and passwords</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Passwords</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Save logins and passwords</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Save passwords</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Ask to save</string>
@@ -1777,47 +1801,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Fill usernames and passwords in other apps on your device.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Add login</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Add password</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchronise logins</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synchronise passwords</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchronise logins across devices</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synchronise passwords across devices</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Saved logins</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Saved passwords</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">The logins you save or synchronise to %s will show up here.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">The passwords you save or synchronise to %s will be listed here. All passwords you save are encrypted.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Learn more about Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Learn more about Sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Exceptions</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins and passwords that are not saved will be shown here.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s won’t save passwords for sites listed here.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Logins and passwords will not be saved for these sites.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s won’t save passwords for these sites.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Delete all exceptions</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Search logins</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Search passwords</string>
<!-- The header for the site that a login is for -->
@@ -1846,17 +1851,11 @@
<string name="saved_login_reveal_password">Show password</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Hide password</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Unlock to view your saved logins</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Unlock to view your saved passwords</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Secure your logins and passwords</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Secure your saved passwords</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Set up a device lock pattern, PIN, or password to protect your saved logins and passwords from being accessed if someone else has your device.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Set up a device lock pattern, PIN, or password to protect your saved passwords from being accessed if someone else has your device.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Later</string>
@@ -1873,8 +1872,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Name (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Last used</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Sort logins menu</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Sort passwords menu</string>
@@ -1884,41 +1881,27 @@
<string name="preferences_autofill">Autofill</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Addresses</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Credit cards</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Payment methods</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Save and autofill cards</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Save and fill payment methods</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Data is encrypted</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s encrypts all payment methods you save</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synchronise cards across devices</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synchronise cards</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Add credit card</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Add card</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Manage saved cards</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Manage cards</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Add address</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Manage addresses</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Save and autofill addresses</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Save and fill addresses</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Include information like numbers, email and shipping addresses</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Includes phone numbers and email addresses</string>
@@ -1942,8 +1925,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Delete card</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Are you sure you want to delete this credit card?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Delete card?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Delete</string>
@@ -1957,24 +1938,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Saved cards</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Please enter a valid credit card number</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Enter a valid card number</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Please fill out this field</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Add a name</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Unlock to view your saved cards</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Secure your credit cards</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Secure your saved payment methods</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Set up a device lock pattern, PIN, or password to protect your saved credit cards from being accessed if someone else has your device.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Set up a device lock pattern, PIN, or password to protect your saved payment methods from being accessed if someone else has your device.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Set up now</string>
@@ -1982,8 +1954,6 @@
<string name="credit_cards_warning_dialog_later">Later</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Unlock your device</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Unlock to use stored credit card information</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Unlock to use saved payment methods</string>
@@ -1993,12 +1963,6 @@
<string name="addresses_edit_address">Edit address</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Manage addresses</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">First Name</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Middle Name</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Last Name</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Name</string>
<!-- The header for the street address of an address -->
@@ -2025,8 +1989,6 @@
<string name="addressess_delete_address_button">Delete address</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Are you sure you want to delete this address?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Delete this address?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Delete</string>
@@ -2124,49 +2086,29 @@
<string name="login_menu_delete_button">Delete</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Edit</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Are you sure you want to delete this login?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Are you sure you want to delete this password?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Delete</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancel</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Login options</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Password options</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">The editable text field for the web address of the login.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">The editable text field for the web site address.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">The editable text field for the username of the login.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">The editable text field for the username.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">The editable text field for the password of the login.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">The editable text field for the password.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Save changes to login.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Save changes.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Edit</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Edit password</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Add new login</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Add password</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Password required</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Enter a password</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Username required</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Enter a username</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Hostname required</string>
@@ -2513,6 +2455,8 @@
<string name="translations_bottom_sheet_negative_button">Not now</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Show original</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Original untranslated page loaded</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Done</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2570,6 +2514,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Close Translations sheet</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Some settings are temporarily unavailable.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Translations</string>
@@ -2592,6 +2539,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Select a language to manage ”always translate“ and ”never translate“ preferences.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Couldn’t load languages. Please check back later.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Offer to translate (default)</string>
@@ -2614,6 +2564,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Remove %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Couldn’t load sites. Please check back later.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Delete %1$s?</string>
@@ -2691,13 +2643,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Navigate backwards</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Open debug drawer</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Tab Tools</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Tab count</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Active</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Active</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Active</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactive</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2708,6 +2665,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Tab creation tool</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Tab quantity to create</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Text field is empty</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Please enter positive integers only</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Please enter a number greater than zero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Exceeded the maximum number of tabs (%1$s) that can be generated in one operation</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Add to active tabs</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2724,11 +2691,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Privacy Notice</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Submit</string>
+ <string name="micro_survey_submit_button_label">Submit</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Close</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Close</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Thanks for your feedback!</string>
+ <string name="micro_survey_feedback_confirmation">Thanks for your feedback!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Very Satisfied</string>
<!-- Option for likert scale -->
@@ -2740,6 +2707,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Very Dissatisfied</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Open survey</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Close survey</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Close</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Logins</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-eo/strings.xml b/mobile/android/fenix/app/src/main/res/values-eo/strings.xml
index 0b365e2616..962dc6a81c 100644
--- a/mobile/android/fenix/app/src/main/res/values-eo/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-eo/strings.xml
@@ -48,11 +48,19 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Ĵuse konservitaj</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Ĵuse konservitaj</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Montri ĉiujn konservitajn legosignojn</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Montri ĉiujn konservitajn legosignojn</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Forigi</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Forigi</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Legosignoj</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Montri ĉiujn legosignojn</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Forigi</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s estas kreita de Mozilla.</string>
@@ -140,8 +148,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">Nova privata langeto</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">Ŝparvojo por la pasvortoj</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">Pasvortoj</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">Ŝparvojo por la pasvortoj</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -182,11 +192,13 @@
<!-- Content description (not visible, for screen readers etc.): Stop loading current website -->
<string name="browser_menu_stop">Haltigi</string>
<!-- Browser menu button that opens the addon manager -->
- <string name="browser_menu_add_ons">Aldonaĵoj</string>
+ <string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Aldonaĵoj</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_extensions">Etendaĵoj</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informoj pri konto</string>
<!-- Text displayed when there are no add-ons to be shown -->
- <string name="no_add_ons">Neniu aldonaĵo estas ĉi tie</string>
+ <string name="no_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Neniu aldonaĵo estas ĉi tie</string>
<!-- Browser menu button that sends a user to help articles -->
<string name="browser_menu_help">Helpo</string>
<!-- Browser menu button that sends a to a the what's new article -->
@@ -202,12 +214,14 @@
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Aldoni al hejmekrano</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
- <string name="browser_menu_install_on_homescreen">Instali</string>
+ <string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instali</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Respeguli</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Serĉi en paĝo</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Serĉi en paĝo…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traduki paĝon</string>
<!-- Browser menu button that saves the current tab to a collection -->
@@ -240,6 +254,33 @@
<!-- Button shown on the home page that opens the Customize home settings -->
<string name="browser_menu_customize_home_1">Personecigi ekan paĝon</string>
+ <!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
+ <string name="browser_menu_sign_in">Komenci seancon</string>
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">Speguli pasvortojn, langetojn, kaj pli</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Rekomencu seancon por speguli</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Spegulado paŭzinta</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">Nova privata langeto</string>
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">Pasvortoj</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Novaĵoj en %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Iri al versio por komputiloj</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Iloj</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Konservi</string>
+
+ <!-- Extensions management fragment -->
+ <!-- Text displayed when there are no extensions to be shown -->
+ <string name="extensions_management_no_extensions">Ne estas etendaĵoj ĉi tie</string>
+
<!-- Browser Toolbar -->
<!-- Content description for the Home screen button on the browser toolbar -->
<string name="browser_toolbar_home">Hejmekrano</string>
@@ -543,6 +584,8 @@
<string name="preferences_account_sync_error">Rekonektiĝu por daŭrigi la speguladon</string>
<!-- Preference for language -->
<string name="preferences_language">Lingvo</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation">Traduko</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Elekto de datumoj</string>
<!-- Preference for data collection -->
@@ -594,10 +637,14 @@
<string name="quit_application">Fino de programo pro apliko de ŝanĝoj…</string>
<!-- Preference for add_ons -->
- <string name="preferences_addons">Aldonaĵoj</string>
+ <string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">Aldonaĵoj</string>
+ <!-- Preference for extensions -->
+ <string name="preferences_extensions">Etendaĵoj</string>
<!-- Preference for installing a local add-on -->
- <string name="preferences_install_local_addon">Instali aldonaĵon el dosiero</string>
+ <string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Instali aldonaĵon el dosiero</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">Instali etendaĵon el dosiero</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Sciigoj</string>
@@ -606,9 +653,25 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">Ne permesita</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Postulata</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Elektebla</string>
+ <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
+ <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Legi kaj ŝanĝi retejajn datumojn</string>
+ <!-- The description of the icon that can delete one of the websites displayed -->
+ <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Forigi retejon</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permesi por ĉiuj retejoj</string>
+ <!-- The subtitle for the allow for all sites preference toggle -->
+ <string name="addons_permissions_allow_for_all_sites_subtitle" tools:ignore="UnusedResources">Se vi fidas tiun ĉi etendaĵon vi povas doni al ĝi tiun permeson por ĉiuj retejoj.</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
- <string name="preferences_customize_amo_collection">Personecigita kolekto de aldonaĵoj</string>
+ <string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Personecigita kolekto de aldonaĵoj</string>
+ <!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
+ <string name="preferences_customize_extension_collection">Personecigita kolekto de etendaĵoj</string>
<!-- Button caption to confirm the add-on collection configuration -->
<string name="customize_addon_collection_ok">Akcepti</string>
<!-- Button caption to abort the add-on collection configuration -->
@@ -618,13 +681,18 @@
<!-- Hint displayed on input field for custom collection user ID-->
<string name="customize_addon_collection_user_hint">Posedanto de kolekto (identigilo de uzanto)</string>
<!-- Toast shown after confirming the custom add-on collection configuration -->
- <string name="toast_customize_addon_collection_done">La kolekto de aldonaĵoj estis ŝanĝita. La programo nun finiĝos por apliki la ŝanĝojn…</string>
+ <string name="toast_customize_addon_collection_done" moz:removedIn="126" tools:ignore="UnusedResources">La kolekto de aldonaĵoj estis ŝanĝita. La programo nun finiĝos por apliki la ŝanĝojn…</string>
+
+ <!-- Toast shown after confirming the custom extension collection configuration -->
+ <string name="toast_customize_extension_collection_done">La kolekto de etendaĵoj estis ŝanĝita. La programo nun finiĝos por apliki la ŝanĝojn…</string>
<!-- Customize Home -->
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Reiri</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Ĵusaj legosignoj</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Ĵusaj legosignoj</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Legosignoj</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Ĵusaj retpaĝoj</string>
@@ -674,21 +742,37 @@
<!-- Add-ons general availability nimbus message-->
<!-- Title of the Nimbus message for add-ons general availability-->
- <string name="addon_ga_message_title" tools:ignore="UnusedResources">Novaj aldonaĵoj disponeblaj</string>
+ <string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">Novaj aldonaĵoj disponeblaj</string>
+ <!-- Title of the Nimbus message for extension general availability-->
+ <string name="addon_ga_message_title_2" tools:ignore="UnusedResources">Novaj etendaĵoj disponeblaj</string>
<!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
<string name="addon_ga_message_body" tools:ignore="UnusedResources">Konu pli ol 100+ novajn etendaĵojn, kiuj permesas al vi personecigi Firefox.</string>
<!-- Button text of the Nimbus message for add-ons general availability. -->
- <string name="addon_ga_message_button" tools:ignore="UnusedResources">Esplori aldonaĵojn</string>
+ <string name="addon_ga_message_button" moz:removedIn="126" tools:ignore="UnusedResources">Esplori aldonaĵojn</string>
- <!-- Add-on process crash dialog to user -->
+ <!-- Button text of the Nimbus message for extensions general availability. -->
+ <string name="addon_ga_message_button_2" tools:ignore="UnusedResources">Esplori etendaĵoj</string>
+
+ <!-- Extension process crash dialog to user -->
<!-- Title of a dialog shown to the user when enough errors have occurred with addons and they need to be temporarily disabled -->
- <string name="addon_process_crash_dialog_title" tools:ignore="UnusedResources">La aldonaĵoj estas provizore malaktivigitaj</string>
+ <string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">La aldonaĵoj estas provizore malaktivigitaj</string>
+ <!-- Title of the extension crash dialog shown to the user when enough errors have occurred with extensions and they need to be temporarily disabled -->
+ <string name="extension_process_crash_dialog_title">La etendaĵoj estas provizore malaktivigitaj</string>
<!-- The first parameter is the application name. This is a message shown to the user when too many errors have occurred with the addons process and they have been disabled. The user can decide if they would like to continue trying to start add-ons or if they'd rather continue without them. -->
- <string name="addon_process_crash_dialog_message" tools:ignore="UnusedResources">Unu aŭ pli da aldonaĴoj ĉesis funkcii, kaj tio igas vian sistemon nestabila. %1$s malsukcese klopodis restartigi la aldonaĵo(j)n.\n\nAldonaĵoj ne estos restartigitaj dum via nuna seanco.\n\nForigo aŭ malaktivigo de aldonaĵo(j) povus solvi tiun ĉi problemo.</string>
+ <string name="addon_process_crash_dialog_message" moz:removedIn="126" tools:ignore="UnusedResources">Unu aŭ pli da aldonaĴoj ĉesis funkcii, kaj tio igas vian sistemon nestabila. %1$s malsukcese klopodis restartigi la aldonaĵo(j)n.\n\nAldonaĵoj ne estos restartigitaj dum via nuna seanco.\n\nForigo aŭ malaktivigo de aldonaĵo(j) povus solvi tiun ĉi problemo.</string>
+ <!-- This is a message shown to the user when too many errors have occurred with the extensions process and they have been disabled.
+ The user can decide if they would like to continue trying to start extensions or if they'd rather continue without them.
+ The first parameter is the application name. -->
+ <string name="extension_process_crash_dialog_message">Unu aŭ pli da etendaĵoj ĉesis funkcii, kaj tio igas vian sistemon nestabila. %1$s malsukcese klopodis restartigi la etendaĵo(j)n.\n\nEtendaĵoj ne estos restartigitaj dum via nuna seanco.\n\nForigo aŭ malaktivigo de aldonaĵo(j) povus solvi tiun ĉi problemo.</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
- <string name="addon_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Provi restartigi aldonaĵojn</string>
+ <string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Provi restartigi aldonaĵojn</string>
+ <!-- Button text on the extension crash dialog to prompt the user to try restarting the extensions but the dialog will reappear if it is unsuccessful again -->
+ <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Provi restartigi etendaĵojn</string>
<!-- The user will continue with all add-ons disabled -->
- <string name="addon_process_crash_dialog_disable_addons_button_text" tools:ignore="UnusedResources">Daŭrigi kun aldonaĵoj malaktivigitaj</string>
+ <string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Daŭrigi kun aldonaĵoj malaktivigitaj</string>
+
+ <!-- Button text on the extension crash dialog to prompt the user to continue with all extensions disabled. -->
+ <string name="extension_process_crash_dialog_disable_extensions_button_text">Daŭrigi kun etendaĵoj malaktivigitaj</string>
<!-- Account Preferences -->
<!-- Preference for managing your account via accounts.firefox.com -->
@@ -2441,10 +2525,14 @@
<string name="translations_bottom_sheet_translate_from">Traduki el</string>
<!-- Label for the dropdown to select which language to translate to on the translations dialog. Usually the translate to language selected will be the user's preferred language. -->
<string name="translations_bottom_sheet_translate_to">Traduki en</string>
+ <!-- Label for the dropdown to select which language to translate from on the translations dialog when the page language is not supported. This selection is to allow the user to select another language, in case we automatically detected the page language incorrectly. -->
+ <string name="translations_bottom_sheet_translate_from_unsupported_language">Provi alian originan lingvon</string>
<!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button">Ne nun</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Montri originalon</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Originala netradukita paĝo ŝargita</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Farita</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2464,7 +2552,7 @@
<!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
<string name="translation_error_language_not_supported_warning_text">Bedaŭrinde ni ankoraŭ ne subtenas %1$s.</string>
<!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
- <string name="translation_error_language_not_supported_learn_more">Pli da informo</string>
+ <string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">Pli da informo</string>
<!-- Snackbar title shown if the user closes the Translation Request dialogue and a translation is in progress. -->
@@ -2478,7 +2566,9 @@
<!-- Translations options dialog -->
<!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
- <string name="translation_option_bottom_sheet_title">Tradukaj elektebloj</string>
+ <string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">Tradukaj elektebloj</string>
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title_heading">Tradukaj elektebloj</string>
<!-- Toggle switch label that allows a user to set the setting if they would like the browser to always offer or suggest translations when available. -->
<string name="translation_option_bottom_sheet_always_translate">Ĉiam proponi tradukon</string>
<!-- Toggle switch label that allows a user to set if they would like a given language to automatically translate or not. The first parameter is the language name, for example, "Spanish". -->
@@ -2496,6 +2586,9 @@
<!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translation_option_bottom_sheet_about_translations">Pri tradukoj en %1$s</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
+ <string name="translation_option_bottom_sheet_close_content_description">Fermi panelon de tradukoj</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Tradukoj</string>
@@ -2603,6 +2696,8 @@
<string name="download_language_file_dialog_title">Ĉu elŝuti dum datumŝpara reĝimo (%1$s)?</string>
<!-- Additional information for the data saving mode warning dialog used by the translations feature. This text explains the reason a download is required for a translation. -->
<string name="download_language_file_dialog_message_all_languages">Ni elŝutas partojn de lingvoj al via staplo por gardi viajn tradukojn privataj.</string>
+ <!-- Additional information for the data saving mode warning dialog used by the translations feature. This text explains the reason a download is required for a translation without mentioning the cache. -->
+ <string name="download_language_file_dialog_message_all_languages_no_cache">Ni elŝutas partojn de lingvoj por gardi viajn tradukojn privataj.</string>
<!-- Checkbox label text on the data saving mode warning dialog used by the translations feature. This checkbox allows users to ignore the data usage warnings. -->
<string name="download_language_file_dialog_checkbox_text">Ĉiam elŝuti en datumŝpara regïmo</string>
<!-- Button text on the data saving mode warning dialog used by the translations feature to allow users to confirm they wish to continue and download the language file. -->
@@ -2617,6 +2712,8 @@
<string name="debug_drawer_title">Erarserĉilaj iloj</string>
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Iri reen</string>
+
+ <!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Langetaj iloj</string>
<!-- The title of the tab count section in Tab Tools. -->
@@ -2639,4 +2736,39 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">Aldoni al malaktivaj langetoj</string>
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Aldoni al privataj langetoj</string>
+
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Daŭrigi</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Respondi tiun ĉi demandaron</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Rimarko pri privateco</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Sendi</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label">Fermi</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Dankon pro via opinio!</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Tre kontentiga</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Kontentiga</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Neŭtra</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Nekontentiga</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Tute nekontentiga</string>
+
+ <!-- Debug drawer logins -->
+ <!-- The title of the Logins feature in the Debug Drawer. -->
+ <string name="debug_drawer_logins_title">Legitimiloj</string>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Nuna nomregno: %s</string>
+ <!-- The label for a button to add a new fake login for the current domain in the Logins feature. -->
+ <string name="debug_drawer_logins_add_login_button">Aldoni neveran konton al tiu ĉi nomregno</string>
+ <!-- Content description for delete button where parameter will be the username of the login -->
+ <string name="debug_drawer_logins_delete_login_button_content_description">Forigi legitimilon kun la nomo de uzanto %s</string>
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-es-rAR/strings.xml b/mobile/android/fenix/app/src/main/res/values-es-rAR/strings.xml
index 785d99207d..ad85fcab17 100644
--- a/mobile/android/fenix/app/src/main/res/values-es-rAR/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-es-rAR/strings.xml
@@ -201,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Complementos</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensiones</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Administrar extensiones</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Descubrir más extensiones</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Información de la cuenta</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -219,6 +223,8 @@
<string name="browser_menu_open_in_regular_tab">Abrir en una pestaña normal</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Agregar a pantalla de inicio</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Agregar a la pantalla de inicio…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -230,9 +236,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traducir página</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Guardar en la colección…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Guardar en la colección</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Compartir</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Compartir…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Abrir en %1$s</string>
@@ -287,6 +297,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Guardar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Marcar esta página</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Editar marcador</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Guardar como PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Activar vista de lectura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Desactivar vista de lectura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traducir página…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traducido al %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimir…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">No hay extensiones aquí</string>
@@ -387,8 +415,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Aviso de privacidad de Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Conocé más en nuestra nota de privacidad</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Nos encanta mantenerte seguro</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -596,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">Idioma</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Traducción</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traducción</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traducciones</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Elección de datos</string>
<!-- Preference for data collection -->
@@ -670,10 +698,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Necesarios</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Leer y cambiar los datos de sitios web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Eliminar sitio web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permitir para todos los sitios</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -798,8 +822,6 @@
<string name="preferences_sync_history">Historial</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marcadores</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Contraseñas</string>
<!-- Preference for syncing tabs -->
@@ -828,8 +850,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s en %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarjetas de crédito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Métodos de pago</string>
<!-- Preference for syncing addresses -->
@@ -845,6 +865,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Pestaña de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Pestañas cerradas en %1$s: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ver pestañas cerradas recientemente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Excepciones</string>
@@ -1787,12 +1815,8 @@
<string name="add_to_homescreen_description_2">Podés agregar este sitio a la pantalla de inicio del dispositivo fácilmente para tener acceso instantáneo y navegar más rápido con una experiencia similar a la de una aplicación.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión y contraseñas</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Contraseñas</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar inicios de sesión y contraseñas</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Guardar contraseñas</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Solicitar guardar</string>
@@ -1807,46 +1831,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Completar nombres de usuario y contraseñas en otras aplicaciones de tu dispositivo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Agregar inicio de sesión</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Agregar contraseña</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar inicios de sesión</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizar contraseñas</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar inicios de sesión entre dispositivos</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronizar contraseñas entre dispositivos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión guardados</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Contraseñas guardadas</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Aquí se van a ver los inicios de sesión que guardes o sincronices con %s.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Las contraseñas que guardés o sincronicés con %s aparecerán acá. Todas las contraseñas que guardés están encriptadas.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Conocé más acerca de Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Conocé más acerca de la sincronización</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Excepciones</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Los inicios de sesión y las contraseñas que no se guardan se mostrarán aquí.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s no guardará las contraseñas de los sitios listados acá.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Los inicios de sesión y las contraseñas no se van a guardar para estos sitios.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s no guardará las contraseñas de estos sitios.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Eliminar todas las excepciones</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Buscar inicios de sesión</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Buscar contraseñas</string>
<!-- The header for the site that a login is for -->
@@ -1875,17 +1880,11 @@
<string name="saved_login_reveal_password">Mostrar contraseña</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Ocultar contraseña</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloqueá para ver tus inicios de sesión guardados</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Desbloqueá para ver las contraseñas guardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegurá inicios de sesión y contraseñas</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Asegurá tus contraseñas guardadas</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configurá un patrón de bloqueo del dispositivo, un PIN o una contraseña para proteger el acceso a tus inicios de sesión y contraseñas guardadas por si alguien más tiene tu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Configurá un patrón de bloqueo del dispositivo, PIN o contraseña para proteger el acceso a tus contraseñas guardadas si alguien más tiene tu dispositivo.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Más tarde</string>
@@ -1902,8 +1901,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nombre (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Usado por última vez</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ordenar menú de inicio de sesión</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menú ordenar contraseñas</string>
@@ -1913,41 +1910,27 @@
<string name="preferences_autofill">Autocompletar</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Direcciones</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarjetas de crédito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Métodos de pago</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar y autocompletar tarjetas</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Guardar y completar métodos de pago</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Los datos están cifrados</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s cifra todos los métodos de pago guardados</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizar tarjetas entre dispositivos</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizar tarjetas</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Agregar tarjeta de crédito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Agregar tarjeta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Administrar tarjetas guardadas</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Administrar tarjetas</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Agregar dirección</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Administrar direcciones</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar y autocompletar direcciones</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Guardar y completar direcciones</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Incluir información como números, correos electrónicos y direcciones de envíos</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Incluye números de teléfono y direcciones de correo electrónico</string>
@@ -1971,8 +1954,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Borrar tarjeta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Estás seguro de querer borrar esta tarjeta de crédito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">¿Borrar tarjeta?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Borrar</string>
@@ -1986,25 +1967,16 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Tarjetas guardadas</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ingresá un número de tarjeta de crédito válido</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Ingresá un número de tarjeta válido</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Se debe completar este campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Agregar un nombre</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Desbloqueá para ver las tarjetas guardadas</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegurá tus tarjetas de crédito</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Asegurá tus métodos de pago guardados</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configurá un patrón de bloqueo del dispositivo, PIN o contraseña para proteger el acceso a tus tarjetas de crédito guardadas si alguien más tiene tu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Configurá un patrón de bloqueo del dispositivo, un PIN o una contraseña para proteger el acceso a tus métodos de pago guardados por si otra persona accede a tu dispositivo.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurar ahora</string>
@@ -2013,9 +1985,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Desbloqueá tu dispositivo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquear para usar la información almacenada de la tarjeta de crédito</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Desbloquear para usar los métodos de pago guardados</string>
<!-- Title of the "Add address" screen -->
@@ -2024,12 +1993,6 @@
<string name="addresses_edit_address">Editar dirección</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Administrar direcciones</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Primer Nombre</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Segundo nombre</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Apellido</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nombre</string>
<!-- The header for the street address of an address -->
@@ -2056,8 +2019,6 @@
<string name="addressess_delete_address_button">Borrar dirección</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Estás seguro de querer borrar esta dirección?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">¿Borrar esta dirección?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Borrar</string>
@@ -2157,49 +2118,29 @@
<string name="login_menu_delete_button">Eliminar</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Editar</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Estás seguro de que querés eliminar este inicio de sesión?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">¿Estás seguro de que querés eliminar esta contraseña?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Eliminar</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancelar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opciones de inicio de sesión</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opciones de contraseña</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para la dirección web del inicio de sesión.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">El campo de texto editable para la dirección del sitio web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para el nombre de usuario del inicio de sesión.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">El campo de texto editable para el nombre de usuario.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para la contraseña del inicio de sesión.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">El campo de texto editable para la contraseña.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar cambios para el inicio de sesión.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Guardar cambios.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Editar</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Editar contraseña</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Agregar nuevo inicio de sesión</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Agregar contraseña</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Se necesita contraseña</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Ingresar una contraseña</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Se requiere nombre de usuario</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Ingresar un nombre de usuario</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Se requiere nombre de host</string>
@@ -2608,6 +2549,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Cerrar la hoja de traducciones</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Algunas configuraciones no están disponibles temporariamente.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traducciones</string>
@@ -2630,6 +2574,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Seleccioná un idioma para administrar las preferencias de ”traducir siempre“ y ”nunca traducir“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">No se pudieron cargar los idiomas. Intentalo de nuevo más tarde.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Ofrecer traducción (predeterminado)</string>
@@ -2653,6 +2600,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Eliminar %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">No se pudieron cargar los sitios. Intentalo de nuevo más tarde.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">¿Eliminar %1$s?</string>
@@ -2730,13 +2679,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Navegar hacia atrás</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Abrir cajón de depuración</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Herramientas de pestañas</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Cantidad de pestañas</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Activa</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Activa</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Activo</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactiva</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2747,6 +2701,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Herramienta de creación de pestañas</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Cantidad de pestañas a crear</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">El campo de texto está vacío</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Ingresar solamente enteros positivos</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Ingresar un número mayor que cero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Se superó el número máximo de pestañas (%1$s) que se pueden generar en una operación</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Agregar a pestañas activas</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2763,11 +2727,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Nota de privacidad</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Enviar</string>
+ <string name="micro_survey_submit_button_label">Enviar</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Cerrar</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Cerrar</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">¡Gracias por tus comentarios!</string>
+ <string name="micro_survey_feedback_confirmation">¡Gracias por tus comentarios!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Muy satisfecho</string>
<!-- Option for likert scale -->
@@ -2779,6 +2743,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Muy insatisfecho</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Abrir encuesta</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Cerrar encuesta</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Cerrar</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Inicios de sesión</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-es-rCL/strings.xml b/mobile/android/fenix/app/src/main/res/values-es-rCL/strings.xml
index 099a7d1850..32f5170529 100644
--- a/mobile/android/fenix/app/src/main/res/values-es-rCL/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-es-rCL/strings.xml
@@ -47,12 +47,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Guardados recientemente</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Guardados recientemente</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Mostrar todos los marcadores guardados</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Mostrar todos los marcadores guardados</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Eliminar</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Eliminar</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Marcadores</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Mostrar todos los marcadores</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Eliminar</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s es producido por Mozilla.</string>
@@ -191,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Complementos</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensiones</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gestionar extensiones</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Descubrir más extensiones</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Información de la cuenta</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -209,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">Abrir en pestaña normal</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Añadir a pantalla de inicio</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Añadir a la pantalla de inicio…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -220,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traducir página</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Guardar en la colección…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Guardar en la colección</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Compartir</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Compartir…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Abrir en %1$s</string>
@@ -275,6 +293,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Guardar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Guardar esta página en marcadores</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Editar marcador</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Guardar como PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Activar la vista de lector</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Desactivar la vista de lector</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traducir página…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traducido al %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimir…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">No hay extensiones aquí</string>
@@ -371,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Aviso de privacidad de Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Aprende más en nuestra política de privacidad</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Nos encanta mantenerte a salvo</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -581,7 +615,9 @@
<!-- Preference for language -->
<string name="preferences_language">Idioma</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Traducción</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traducción</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traducciones</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Elección de datos</string>
<!-- Preference for data collection -->
@@ -654,10 +690,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Requerido</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Leer y cambiar datos del sitio web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Eliminar sitio web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permitir para todos los sitios</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -686,7 +718,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Regresar a</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Marcadores recientes</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Marcadores recientes</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Marcadores</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Visitados recientemente</string>
@@ -781,8 +815,6 @@
<string name="preferences_sync_history">Historial</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marcadores</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenciales</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Contraseñas</string>
<!-- Preference for syncing tabs -->
@@ -809,8 +841,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s en %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarjetas de crédito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Métodos de pago</string>
<!-- Preference for syncing addresses -->
@@ -826,6 +856,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Pestaña de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s pestañas cerradas: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ver pestañas cerradas recientemente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Excepciones</string>
@@ -1750,12 +1788,8 @@
<string name="add_to_homescreen_description_2">Puedes añadir fácilmente este sitio web a tu pantalla de inicio de tu dispositivo para tener acceso instantáneo y navegar rápidamente, consiguiendo una experiencia similar a la de una aplicación real.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenciales y contraseñas</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Contraseñas</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar credenciales y contraseñas</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Guardar contraseñas</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Preguntar si guardar</string>
@@ -1770,47 +1804,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Completa los nombres de usuario y contraseñas en otras aplicaciones de tu dispositivo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir conexión</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Añadir contraseña</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar credenciales</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizar contraseñas</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar credenciales en todos los dispositivos</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronizar contraseñas entre dispositivos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenciales guardadas</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Contraseñas guardadas</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Las credenciales que guardas o sincronizas con %s serán mostradas aquí.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Las contraseñas que guardes o sincronices con %s aparecerán aquí. Todas las contraseñas que guardes quedan cifradas.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Aprender más acerca de Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Aprende más acerca de la sincronización</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Excepciones</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Las credenciales y contraseñas que no son guardadas serán mostradas aquí.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s no guardará las contraseñas de los sitios listados aquí.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Las credenciales y contraseñas no serán guardadas para estos sitios.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s no guardará las contraseñas para estos sitios.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Eliminar todas las excepciones</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Buscar credenciales</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Buscar contraseñas</string>
<!-- The header for the site that a login is for -->
@@ -1839,17 +1854,11 @@
<string name="saved_login_reveal_password">Mostrar contraseña</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Ocultar contraseña</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquea para ver tus credenciales guardadas</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Desbloquea para ver tus contraseñas guardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegura tus credenciales y contraseñas</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Asegura tus contraseñas guardadas</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configura un patrón de bloqueo de dispositivo, PIN o contraseña para proteger tus credenciales y contraseñas guardadas, y así no sean accedidas si alguien más tiene tu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Configura un patrón de bloqueo de dispositivo, PIN o contraseña para proteger tus contraseñas guardadas, y así no sean accedidas si alguien más tiene tu dispositivo.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Más tarde</string>
@@ -1867,8 +1876,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nombre (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Último uso</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Menú para ordenar credenciales</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menú ordenar contraseñas</string>
@@ -1878,41 +1885,27 @@
<string name="preferences_autofill">Autollenado</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Direcciones</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarjetas de crédito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Métodos de pago</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar y autocompletar tarjetas</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Guardar y completar métodos de pago</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Los datos están encriptados</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s cifra todos los métodos de pago que guardas</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizar tarjetas entre dispositivos</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizar tarjetas</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir tarjeta de crédito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Añadir tarjeta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gestionar tarjetas guardadas</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Gestionar tarjetas</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Añadir dirección</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Administrar direcciones</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar y autocompletar direcciones</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Guardar y completar direcciones</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Incluye información como números, correos electrónicos y direcciones</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Incluye números de teléfono y direcciones de correo electrónico</string>
@@ -1936,8 +1929,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Eliminar tarjeta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿De verdad quieres eliminar esta tarjeta de crédito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">¿Eliminar tarjeta?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Eliminar</string>
@@ -1951,24 +1942,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Tarjetas guardadas</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Por favor, ingresa un número de tarjeta de crédito válido</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Ingresa un número de tarjeta válido</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Complete este campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Añadir un nombre</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Desbloquea para ver tus tarjetas guardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegura tus tarjetas de crédito</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Asegura tus métodos de pago guardados</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configura un patrón de bloqueo de dispositivo, PIN o contraseña para proteger tus tarjetas de crédito guardadas, y así no sean accedidas si alguien más tiene tu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Configura un patrón de bloqueo de dispositivo, PIN o contraseña para proteger tus métodos de pago guardados, y así no sean accedidos si alguien más tiene tu dispositivo.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurar ahora</string>
@@ -1976,8 +1958,6 @@
<string name="credit_cards_warning_dialog_later">Más tarde</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Desbloquea tu dispositivo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquea para usar información de la tarjeta de crédito almacenada</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Desbloquea para usar métodos de pago guardados</string>
@@ -1987,12 +1967,6 @@
<string name="addresses_edit_address">Editar dirección</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Administrar direcciones</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Primer nombre</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Segundo nombre</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Apellidos</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nombre</string>
<!-- The header for the street address of an address -->
@@ -2019,8 +1993,6 @@
<string name="addressess_delete_address_button">Eliminar dirección</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">¿De verdad quieres eliminar esta dirección?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">¿Eliminar esta dirección?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Eliminar</string>
@@ -2118,49 +2090,29 @@
<string name="login_menu_delete_button">Eliminar</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Editar</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿De verdad quieres eliminar esta conexión?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">¿Estas seguro de eliminar esta contraseña?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Eliminar</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancelar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opciones de credenciales</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opciones de contraseña</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para la dirección web de la credencial.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">El campo de texto editable para la dirección del sitio web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para el nombre de usuario de la credencial.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">El campo de texto editable para el nombre de usuario.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para la contraseña de la credencial.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">El campo de texto editable para la contraseña.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar cambios a la credencial.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Guardar cambios.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Editar</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Editar contraseña</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir nueva credencial</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Añadir contraseña</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Contraseña requerida</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Ingresar una contraseña</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Nombre de usuario requerido</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Ingresar un nombre de usuario</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Nombre de servidor requerido</string>
@@ -2508,6 +2460,8 @@
<string name="translations_bottom_sheet_negative_button">Ahora no</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Mostrar original</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Página original sin traducir cargada</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Hecho</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2565,6 +2519,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Cerrar hoja de traducciones</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Algunos ajustes no están disponibles temporalmente.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traducciones</string>
@@ -2587,6 +2544,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Selecciona un idioma para administrar las preferencias de ”traducir siempre“ y ”nunca traducir“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">No se pudieron cargar idiomas. Por favor, vuelve más tarde.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Ofrecer traducción (predeterminado)</string>
@@ -2609,6 +2569,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Eliminar %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">No se pudieron cargar sitios. Por favor, vuelve más tarde.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">¿Eliminar %1$s?</string>
@@ -2686,13 +2648,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Navegar hacia atrás</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Abrir cajón de depuración</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Herramientas de pestaña</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Recuento de pestañas</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Activa</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Activa</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Activo</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactiva</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2703,6 +2670,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Herramienta de creación de pestañas</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Cantidad de pestañas a crear</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">El campo de texto está vacío</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Por favor, ingresa solo números enteros positivos</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Por favor, introduce un número mayor que cero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Se superó el número máximo de pestañas (%1$s) que se pueden generar en una operación</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Añadir a pestañas activas</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2719,11 +2696,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Política de privacidad</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Enviar</string>
+ <string name="micro_survey_submit_button_label">Enviar</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Cerrar</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Cerrar</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">¡Gracias por tus comentarios!</string>
+ <string name="micro_survey_feedback_confirmation">¡Gracias por tus comentarios!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Muy satisfecho</string>
<!-- Option for likert scale -->
@@ -2735,6 +2712,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Muy insatisfecho</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Abrir encuesta</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Cerrar encuesta</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Cerrar</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Conexiones</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-es-rES/strings.xml b/mobile/android/fenix/app/src/main/res/values-es-rES/strings.xml
index 5896187516..42ee948d2a 100644
--- a/mobile/android/fenix/app/src/main/res/values-es-rES/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-es-rES/strings.xml
@@ -51,12 +51,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Guardado recientemente</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Guardado recientemente</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Mostrar todos los marcadores guardados</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Mostrar todos los marcadores guardados</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Eliminar</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Eliminar</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Marcadores</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Mostrar todos los marcadores</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Eliminar</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s es producido por Mozilla.</string>
@@ -194,6 +202,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Complementos</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensiones</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gestionar extensiones</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Descubrir más extensiones</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Información de la cuenta</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -212,6 +224,8 @@
<string name="browser_menu_open_in_regular_tab">Abrir en una pestaña normal</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Agregar a la pantalla de Inicio</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Añadir a la pantalla de inicio…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -223,9 +237,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traducir página</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Guardar en colección…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Guardar en la colección</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Compartir</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Compartir…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Abrir en %1$s</string>
@@ -280,6 +298,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Guardar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Añadir esta página a marcadores</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Editar marcador</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Guardar como PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Activar vista de lectura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Desactivar vista de lectura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traducir página…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traducido al %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimir…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">No hay extensiones aquí</string>
@@ -377,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Aviso de privacidad de Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Saber más en nuestro aviso de privacidad</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Nos encanta mantenerte a salvo</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -588,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">Idioma</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Traducción</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traducción</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traducciones</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Elección de datos</string>
<!-- Preference for data collection -->
@@ -662,10 +698,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Requerido</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Leer y cambiar los datos de sitios web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Eliminar sitio web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permitir para todos los sitios</string>
@@ -695,7 +727,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Volver a esta pestaña</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Marcadores recientes</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Marcadores recientes</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Marcadores</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Visitados recientemente</string>
@@ -789,8 +823,6 @@
<string name="preferences_sync_history">Historial</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marcadores</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Contraseñas</string>
<!-- Preference for syncing tabs -->
@@ -817,8 +849,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s en %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarjetas de crédito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Métodos de pago</string>
<!-- Preference for syncing addresses -->
@@ -836,6 +866,14 @@
<string name="fxa_tab_received_from_notification_name">Pestaña de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s pestañas cerradas: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ver pestañas cerradas recientemente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Excepciones</string>
@@ -1787,12 +1825,8 @@
<string name="add_to_homescreen_description_2">Puedes añadir fácilmente este sitio web a la pantalla de inicio de tu dispositivo para tener acceso instantáneo y navegar rápidamente, consiguiendo una experiencia similar a la de una aplicación real.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión y contraseñas</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Contraseñas</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar inicios de sesión y contraseñas</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Guardar contraseñas</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Preguntar antes de guardar</string>
@@ -1809,46 +1843,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Completar nombres de usuarios y contraseñas en otras aplicaciones de tu dispositivo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir cuenta</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Añadir contraseña</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión sincronizados</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizar contraseñas</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar inicios de sesión entre dispositivos</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronizar contraseñas entre dispositivos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión guardados</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Contraseñas guardadas</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Los inicios de sesión que guardes o sincronices con %s se mostrarán aquí.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Las contraseñas que guardes o sincronices con %s aparecerán aquí. Todas las contraseñas que guardes quedan cifradas.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Saber más sobre Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Descubre más sobre Sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Excepciones</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Los inicios de sesión y contraseñas no guardados aparecerán aquí.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s no guardará contraseñas para los sitios que se listen aquí.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">No se guardarán los inicios de sesión y contraseñas para estos sitios.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s no guardará las contraseñas para estos sitios.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Eliminar todas las excepciones</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Buscar inicios de sesión</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Buscar contraseñas</string>
<!-- The header for the site that a login is for -->
@@ -1877,17 +1892,11 @@
<string name="saved_login_reveal_password">Mostrar contraseña</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Ocultar contraseña</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquear para ver tus inicios de sesión guardados</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Desbloquea para ver tus contraseñas guardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegurar tus usuarios y contraseñas</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Asegura tus contraseñas guardadas</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configura un patrón de bloqueo del dispositivo, un PIN o una contraseña para proteger el acceso a tus usuarios y contraseñas guardados si alguien más tiene tu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Establece un patrón de bloqueo de dispositivo, PIN o contraseña para proteger tus contraseñas guardadas y evitar que sean accedidas por otras personas en caso de que alguien más tenga tu dispositivo.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Más tarde</string>
@@ -1906,9 +1915,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Usado por última vez</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ordenar menú de inicio de sesión</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menú ordenar contraseñas</string>
@@ -1917,16 +1923,10 @@
<string name="preferences_autofill">Autocompletado</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Direcciones</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarjetas de crédito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Métodos de pago</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar y autocompletar tarjetas</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Guardar y completar métodos de pago</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Los datos están cifrados</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s cifra todos los métodos de pago que guardes</string>
@@ -1934,25 +1934,17 @@
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizar tarjetas entre dispositivos</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizar tarjetas</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir tarjeta de crédito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Añadir tarjeta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Administrar tarjetas guardadas</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Administrar tarjetas</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Añadir dirección</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Administrar direcciones</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar y autocompletar direcciones</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Guardar y completar direcciones</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Incluir información como números, correos electrónicos y direcciones de envío</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Incluye números de teléfono y direcciones de correo electrónico</string>
@@ -1976,8 +1968,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Eliminar tarjeta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Seguro que quieres eliminar esta tarjeta de crédito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">¿Eliminar tarjeta?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Eliminar</string>
@@ -1991,24 +1981,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Tarjetas guardadas</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Por favor, escriba un número válido de tarjeta de crédito</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Introduce un número de tarjeta válido</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Por favor, rellena este campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Añadir un nombre</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Desbloquear para ver tus tarjetas guardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegurar tus tarjetas de crédito</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Protege tus métodos de pago guardados</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configura un patrón de bloqueo, PIN o contraseña para proteger el acceso a tus tarjetas guardadas si alguien más accede a tu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Establece un patrón de bloqueo de dispositivo, PIN o contraseña para proteger tus métodos de pago guardados y evitar que sean accedidos por otras personas en caso de que alguien más tenga tu dispositivo.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurar ahora</string>
@@ -2016,8 +1997,6 @@
<string name="credit_cards_warning_dialog_later">Más tarde</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Desbloquear tu dispositivo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquear para usar la información de la tarjeta de crédito almacenada</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Desbloquea para utilizar métodos de pago guardados</string>
@@ -2027,12 +2006,6 @@
<string name="addresses_edit_address">Editar dirección</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Administrar direcciones</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Nombre</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Segundo nombre</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Apellidos</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nombre</string>
<!-- The header for the street address of an address -->
@@ -2059,8 +2032,6 @@
<string name="addressess_delete_address_button">Eliminar dirección</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Seguro que quieres eliminar esta dirección?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">¿Eliminar esta dirección?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Eliminar</string>
@@ -2159,49 +2130,29 @@
<string name="login_menu_delete_button">Eliminar</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Editar</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Seguro que quieres eliminar este inicio de sesión?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">¿Estás seguro de que quieres eliminar esta contraseña?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Eliminar</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancelar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opciones de inicio de sesión</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opciones de contraseña</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para la dirección web del inicio de sesión.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">El campo de texto editable para la dirección del sitio web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para el nombre de usuario del inicio de sesión.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">El campo de texto editable para el nombre de usuario.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para la contraseña del inicio de sesión.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">El campo de texto editable para la contraseña.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar cambios para el inicio de sesión.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Guardar cambios.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Editar</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Editar contraseña</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir nueva cuenta</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Añadir contraseña</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Se necesita contraseña</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Introduce una contraseña</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Se requiere nombre de usuario</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Introduce un nombre de usuario</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Se requiere nombre de servidor</string>
@@ -2549,6 +2500,8 @@
<string name="translations_bottom_sheet_negative_button">Ahora no</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Mostrar original</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Se ha cargado la página original sin traducir</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Hecho</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2606,6 +2559,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Cerrar hoja de traducciones</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Algunos ajustes no están disponibles temporalmente.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traducciones</string>
@@ -2628,6 +2584,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Selecciona un idioma para administrar las preferencias de ”traducir siempre“ y ”no traducir nunca“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">No se han podido cargar los idiomas. Inténtalo de nuevo más tarde.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Ofrecer traducción (predeterminado)</string>
@@ -2651,6 +2610,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Eliminar %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">No se han podido cargar los sitios. Inténtalo de nuevo más tarde.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">¿Eliminar %1$s?</string>
@@ -2728,13 +2689,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Ir a la página anterior</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Abrir panel de depuración</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Herramientas de pestañas</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Número de pestañas</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Activa</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Activa</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Activo</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactiva</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2745,6 +2711,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Herramienta de creación de pestañas</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Cantidad de pestañas a crear</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">El campo de texto está vacío</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Introduce solo números enteros positivos</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Introduce un número mayor que cero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Se ha superado el número máximo de pestañas (%1$s) que se pueden generar en una operación</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Añadir a pestañas activas</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2761,11 +2737,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Aviso de privacidad</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Enviar</string>
+ <string name="micro_survey_submit_button_label">Enviar</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Cerrar</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Cerrar</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">¡Gracias por tu opinión!</string>
+ <string name="micro_survey_feedback_confirmation">¡Gracias por tu opinión!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Muy satisfecho</string>
<!-- Option for likert scale -->
@@ -2777,6 +2753,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Muy insatisfecho</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Abrir la encuesta</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Cerrar la encuesta</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Cerrar</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Inicios de sesión</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-es/strings.xml b/mobile/android/fenix/app/src/main/res/values-es/strings.xml
index 5896187516..42ee948d2a 100644
--- a/mobile/android/fenix/app/src/main/res/values-es/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-es/strings.xml
@@ -51,12 +51,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Guardado recientemente</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Guardado recientemente</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Mostrar todos los marcadores guardados</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Mostrar todos los marcadores guardados</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Eliminar</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Eliminar</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Marcadores</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Mostrar todos los marcadores</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Eliminar</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s es producido por Mozilla.</string>
@@ -194,6 +202,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Complementos</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensiones</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gestionar extensiones</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Descubrir más extensiones</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Información de la cuenta</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -212,6 +224,8 @@
<string name="browser_menu_open_in_regular_tab">Abrir en una pestaña normal</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Agregar a la pantalla de Inicio</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Añadir a la pantalla de inicio…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -223,9 +237,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traducir página</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Guardar en colección…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Guardar en la colección</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Compartir</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Compartir…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Abrir en %1$s</string>
@@ -280,6 +298,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Guardar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Añadir esta página a marcadores</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Editar marcador</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Guardar como PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Activar vista de lectura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Desactivar vista de lectura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traducir página…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traducido al %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimir…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">No hay extensiones aquí</string>
@@ -377,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Aviso de privacidad de Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Saber más en nuestro aviso de privacidad</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Nos encanta mantenerte a salvo</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -588,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">Idioma</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Traducción</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traducción</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traducciones</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Elección de datos</string>
<!-- Preference for data collection -->
@@ -662,10 +698,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Requerido</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Leer y cambiar los datos de sitios web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Eliminar sitio web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permitir para todos los sitios</string>
@@ -695,7 +727,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Volver a esta pestaña</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Marcadores recientes</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Marcadores recientes</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Marcadores</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Visitados recientemente</string>
@@ -789,8 +823,6 @@
<string name="preferences_sync_history">Historial</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marcadores</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Contraseñas</string>
<!-- Preference for syncing tabs -->
@@ -817,8 +849,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s en %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarjetas de crédito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Métodos de pago</string>
<!-- Preference for syncing addresses -->
@@ -836,6 +866,14 @@
<string name="fxa_tab_received_from_notification_name">Pestaña de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s pestañas cerradas: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ver pestañas cerradas recientemente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Excepciones</string>
@@ -1787,12 +1825,8 @@
<string name="add_to_homescreen_description_2">Puedes añadir fácilmente este sitio web a la pantalla de inicio de tu dispositivo para tener acceso instantáneo y navegar rápidamente, consiguiendo una experiencia similar a la de una aplicación real.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión y contraseñas</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Contraseñas</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar inicios de sesión y contraseñas</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Guardar contraseñas</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Preguntar antes de guardar</string>
@@ -1809,46 +1843,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Completar nombres de usuarios y contraseñas en otras aplicaciones de tu dispositivo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir cuenta</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Añadir contraseña</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión sincronizados</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizar contraseñas</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar inicios de sesión entre dispositivos</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronizar contraseñas entre dispositivos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inicios de sesión guardados</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Contraseñas guardadas</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Los inicios de sesión que guardes o sincronices con %s se mostrarán aquí.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Las contraseñas que guardes o sincronices con %s aparecerán aquí. Todas las contraseñas que guardes quedan cifradas.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Saber más sobre Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Descubre más sobre Sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Excepciones</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Los inicios de sesión y contraseñas no guardados aparecerán aquí.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s no guardará contraseñas para los sitios que se listen aquí.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">No se guardarán los inicios de sesión y contraseñas para estos sitios.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s no guardará las contraseñas para estos sitios.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Eliminar todas las excepciones</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Buscar inicios de sesión</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Buscar contraseñas</string>
<!-- The header for the site that a login is for -->
@@ -1877,17 +1892,11 @@
<string name="saved_login_reveal_password">Mostrar contraseña</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Ocultar contraseña</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquear para ver tus inicios de sesión guardados</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Desbloquea para ver tus contraseñas guardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegurar tus usuarios y contraseñas</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Asegura tus contraseñas guardadas</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configura un patrón de bloqueo del dispositivo, un PIN o una contraseña para proteger el acceso a tus usuarios y contraseñas guardados si alguien más tiene tu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Establece un patrón de bloqueo de dispositivo, PIN o contraseña para proteger tus contraseñas guardadas y evitar que sean accedidas por otras personas en caso de que alguien más tenga tu dispositivo.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Más tarde</string>
@@ -1906,9 +1915,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Usado por última vez</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ordenar menú de inicio de sesión</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menú ordenar contraseñas</string>
@@ -1917,16 +1923,10 @@
<string name="preferences_autofill">Autocompletado</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Direcciones</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarjetas de crédito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Métodos de pago</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar y autocompletar tarjetas</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Guardar y completar métodos de pago</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Los datos están cifrados</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s cifra todos los métodos de pago que guardes</string>
@@ -1934,25 +1934,17 @@
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizar tarjetas entre dispositivos</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizar tarjetas</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir tarjeta de crédito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Añadir tarjeta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Administrar tarjetas guardadas</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Administrar tarjetas</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Añadir dirección</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Administrar direcciones</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar y autocompletar direcciones</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Guardar y completar direcciones</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Incluir información como números, correos electrónicos y direcciones de envío</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Incluye números de teléfono y direcciones de correo electrónico</string>
@@ -1976,8 +1968,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Eliminar tarjeta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Seguro que quieres eliminar esta tarjeta de crédito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">¿Eliminar tarjeta?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Eliminar</string>
@@ -1991,24 +1981,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Tarjetas guardadas</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Por favor, escriba un número válido de tarjeta de crédito</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Introduce un número de tarjeta válido</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Por favor, rellena este campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Añadir un nombre</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Desbloquear para ver tus tarjetas guardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegurar tus tarjetas de crédito</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Protege tus métodos de pago guardados</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configura un patrón de bloqueo, PIN o contraseña para proteger el acceso a tus tarjetas guardadas si alguien más accede a tu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Establece un patrón de bloqueo de dispositivo, PIN o contraseña para proteger tus métodos de pago guardados y evitar que sean accedidos por otras personas en caso de que alguien más tenga tu dispositivo.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurar ahora</string>
@@ -2016,8 +1997,6 @@
<string name="credit_cards_warning_dialog_later">Más tarde</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Desbloquear tu dispositivo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquear para usar la información de la tarjeta de crédito almacenada</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Desbloquea para utilizar métodos de pago guardados</string>
@@ -2027,12 +2006,6 @@
<string name="addresses_edit_address">Editar dirección</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Administrar direcciones</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Nombre</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Segundo nombre</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Apellidos</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nombre</string>
<!-- The header for the street address of an address -->
@@ -2059,8 +2032,6 @@
<string name="addressess_delete_address_button">Eliminar dirección</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Seguro que quieres eliminar esta dirección?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">¿Eliminar esta dirección?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Eliminar</string>
@@ -2159,49 +2130,29 @@
<string name="login_menu_delete_button">Eliminar</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Editar</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Seguro que quieres eliminar este inicio de sesión?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">¿Estás seguro de que quieres eliminar esta contraseña?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Eliminar</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancelar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opciones de inicio de sesión</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opciones de contraseña</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para la dirección web del inicio de sesión.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">El campo de texto editable para la dirección del sitio web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para el nombre de usuario del inicio de sesión.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">El campo de texto editable para el nombre de usuario.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">El campo de texto editable para la contraseña del inicio de sesión.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">El campo de texto editable para la contraseña.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar cambios para el inicio de sesión.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Guardar cambios.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Editar</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Editar contraseña</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Añadir nueva cuenta</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Añadir contraseña</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Se necesita contraseña</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Introduce una contraseña</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Se requiere nombre de usuario</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Introduce un nombre de usuario</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Se requiere nombre de servidor</string>
@@ -2549,6 +2500,8 @@
<string name="translations_bottom_sheet_negative_button">Ahora no</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Mostrar original</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Se ha cargado la página original sin traducir</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Hecho</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2606,6 +2559,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Cerrar hoja de traducciones</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Algunos ajustes no están disponibles temporalmente.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traducciones</string>
@@ -2628,6 +2584,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Selecciona un idioma para administrar las preferencias de ”traducir siempre“ y ”no traducir nunca“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">No se han podido cargar los idiomas. Inténtalo de nuevo más tarde.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Ofrecer traducción (predeterminado)</string>
@@ -2651,6 +2610,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Eliminar %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">No se han podido cargar los sitios. Inténtalo de nuevo más tarde.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">¿Eliminar %1$s?</string>
@@ -2728,13 +2689,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Ir a la página anterior</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Abrir panel de depuración</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Herramientas de pestañas</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Número de pestañas</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Activa</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Activa</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Activo</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactiva</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2745,6 +2711,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Herramienta de creación de pestañas</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Cantidad de pestañas a crear</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">El campo de texto está vacío</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Introduce solo números enteros positivos</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Introduce un número mayor que cero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Se ha superado el número máximo de pestañas (%1$s) que se pueden generar en una operación</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Añadir a pestañas activas</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2761,11 +2737,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Aviso de privacidad</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Enviar</string>
+ <string name="micro_survey_submit_button_label">Enviar</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Cerrar</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Cerrar</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">¡Gracias por tu opinión!</string>
+ <string name="micro_survey_feedback_confirmation">¡Gracias por tu opinión!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Muy satisfecho</string>
<!-- Option for likert scale -->
@@ -2777,6 +2753,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Muy insatisfecho</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Abrir la encuesta</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Cerrar la encuesta</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Cerrar</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Inicios de sesión</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-eu/strings.xml b/mobile/android/fenix/app/src/main/res/values-eu/strings.xml
index cd905135c3..80955bc9b8 100644
--- a/mobile/android/fenix/app/src/main/res/values-eu/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-eu/strings.xml
@@ -49,12 +49,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Gordetako azkenak</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Gordetako azkenak</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Erakutsi gordetako laster-marka guztiak</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Erakutsi gordetako laster-marka guztiak</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Kendu</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Kendu</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Laster-markak</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Erakutsi laster-marka guztiak</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Kendu</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s Mozillak egina da.</string>
@@ -144,8 +152,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">Fitxa pribatu berria</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">Pasahitzen lasterbidea</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">Pasahitzak</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">Pasahitzen lasterbidea</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -186,11 +196,17 @@
<!-- Content description (not visible, for screen readers etc.): Stop loading current website -->
<string name="browser_menu_stop">Gelditu</string>
<!-- Browser menu button that opens the addon manager -->
- <string name="browser_menu_add_ons">Gehigarriak</string>
+ <string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Gehigarriak</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_extensions">Hedapenak</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Kudeatu hedapenak</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Deskubritu hedapen gehiago</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Kontuaren informazioa</string>
<!-- Text displayed when there are no add-ons to be shown -->
- <string name="no_add_ons">Gehigarririk ez hemen</string>
+ <string name="no_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Gehigarririk ez hemen</string>
<!-- Browser menu button that sends a user to help articles -->
<string name="browser_menu_help">Laguntza</string>
<!-- Browser menu button that sends a to a the what's new article -->
@@ -205,19 +221,27 @@
<string name="browser_menu_open_in_regular_tab">Ireki fitxa arruntean</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Gehitu hasierako pantailan</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Gehitu hasierako pantailan…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
- <string name="browser_menu_install_on_homescreen">Instalatu</string>
+ <string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalatu</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Sinkronizatu berriro</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Bilatu orrian</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Bilatu orrian…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Itzuli orria</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Gorde bilduman…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Gorde bilduman</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Partekatu</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Partekatu…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Ireki %1$s nabigatzailean</string>
@@ -246,6 +270,51 @@
<!-- Button shown on the home page that opens the Customize home settings -->
<string name="browser_menu_customize_home_1">Pertsonalizatu hasiera-orria</string>
+ <!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
+ <string name="browser_menu_sign_in">Hasi saioa</string>
+
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">Sinkronizatu pasahitzak, fitxak eta gehiago</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Hasi berriro saioa sinkronizatzeko</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Sinkronizazioa pausatuta</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">Fitxa pribatu berria</string>
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">Pasahitzak</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Berria %1$s(e)n</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Aldatu mahaigaineko gunera</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Tresnak</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Gorde</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Egin orriaren laster-marka</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Editatu laster-marka</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Gorde PDF gisa…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Aktibatu irakurtzeko ikuspegia</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Desaktibatu irakurtzeko ikuspegia</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Itzuli orria…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s hizkuntzara itzulita</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Inprimatu…</string>
+
+ <!-- Extensions management fragment -->
+ <!-- Text displayed when there are no extensions to be shown -->
+ <string name="extensions_management_no_extensions">Hedapenik ez hemen</string>
+
<!-- Browser Toolbar -->
<!-- Content description for the Home screen button on the browser toolbar -->
<string name="browser_toolbar_home">Hasiera-pantaila</string>
@@ -551,6 +620,10 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<string name="preferences_account_sync_error">Birkonektatu sinkronizatzeari berrekiteko</string>
<!-- Preference for language -->
<string name="preferences_language">Hizkuntza</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Itzulpena</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Itzulpenak</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Datu-aukerak</string>
<!-- Preference for data collection -->
@@ -603,10 +676,14 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<string name="quit_application">Aplikaziotik irteten aldaketak aplikatzeko…</string>
<!-- Preference for add_ons -->
- <string name="preferences_addons">Gehigarriak</string>
+ <string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">Gehigarriak</string>
+ <!-- Preference for extensions -->
+ <string name="preferences_extensions">Hedapenak</string>
<!-- Preference for installing a local add-on -->
- <string name="preferences_install_local_addon">Instalatu gehigarria fitxategitik</string>
+ <string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Instalatu gehigarria fitxategitik</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">Instalatu hedapena fitxategitik</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Jakinarazpenak</string>
@@ -615,9 +692,25 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">Ez dago baimenduta</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Beharrezkoa</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Aukerakoa</string>
+ <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
+ <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Webguneetako datuak irakurri eta aldatzea</string>
+ <!-- The description of the icon that can delete one of the websites displayed -->
+ <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Ezabatu webgunea</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Baimendu gune guztietarako</string>
+ <!-- The subtitle for the allow for all sites preference toggle -->
+ <string name="addons_permissions_allow_for_all_sites_subtitle" tools:ignore="UnusedResources">Hedapena fidagarritzat baduzu, webgune guztietarako baimena eman diezaiokezu.</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
- <string name="preferences_customize_amo_collection">Gehigarrien bilduma pertsonalizatua</string>
+ <string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Gehigarrien bilduma pertsonalizatua</string>
+ <!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
+ <string name="preferences_customize_extension_collection">Hedapenen bilduma pertsonalizatua</string>
<!-- Button caption to confirm the add-on collection configuration -->
<string name="customize_addon_collection_ok">Ados</string>
<!-- Button caption to abort the add-on collection configuration -->
@@ -627,13 +720,18 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<!-- Hint displayed on input field for custom collection user ID-->
<string name="customize_addon_collection_user_hint">Bildumaren jabea (erabiltzaile-IDa)</string>
<!-- Toast shown after confirming the custom add-on collection configuration -->
- <string name="toast_customize_addon_collection_done">Gehigarrien bilduma aldatu egin da. Aplikaziotik irteten aldaketak aplikatzeko…</string>
+ <string name="toast_customize_addon_collection_done" moz:removedIn="126" tools:ignore="UnusedResources">Gehigarrien bilduma aldatu egin da. Aplikaziotik irteten aldaketak aplikatzeko…</string>
+
+ <!-- Toast shown after confirming the custom extension collection configuration -->
+ <string name="toast_customize_extension_collection_done">Hedapenen bilduma aldatu egin da. Aplikaziotik irteten aldaketak aplikatzeko…</string>
<!-- Customize Home -->
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Itzuli zeudenera</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Azken laster-markak</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Azken laster-markak</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Laster-markak</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Bisitatutako azkenak</string>
@@ -682,21 +780,37 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<!-- Add-ons general availability nimbus message-->
<!-- Title of the Nimbus message for add-ons general availability-->
- <string name="addon_ga_message_title" tools:ignore="UnusedResources">Gehigarri berriak erabilgarri orain</string>
+ <string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">Gehigarri berriak erabilgarri orain</string>
+ <!-- Title of the Nimbus message for extension general availability-->
+ <string name="addon_ga_message_title_2" tools:ignore="UnusedResources">Hedapen berriak erabilgarri orain</string>
<!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
<string name="addon_ga_message_body" tools:ignore="UnusedResources">Eman begiratua Firefox zure egiten lagunduko dizuten 100 gehigarri berri baino gehiagori.</string>
<!-- Button text of the Nimbus message for add-ons general availability. -->
- <string name="addon_ga_message_button" tools:ignore="UnusedResources">Esploratu gehigarriak</string>
+ <string name="addon_ga_message_button" moz:removedIn="126" tools:ignore="UnusedResources">Esploratu gehigarriak</string>
- <!-- Add-on process crash dialog to user -->
+ <!-- Button text of the Nimbus message for extensions general availability. -->
+ <string name="addon_ga_message_button_2" tools:ignore="UnusedResources">Arakatu hedapenak</string>
+
+ <!-- Extension process crash dialog to user -->
<!-- Title of a dialog shown to the user when enough errors have occurred with addons and they need to be temporarily disabled -->
- <string name="addon_process_crash_dialog_title" tools:ignore="UnusedResources">Gehigarriak aldi baterako desgaitu dira</string>
+ <string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">Gehigarriak aldi baterako desgaitu dira</string>
+ <!-- Title of the extension crash dialog shown to the user when enough errors have occurred with extensions and they need to be temporarily disabled -->
+ <string name="extension_process_crash_dialog_title">Hedapenak aldi baterako desgaitu dira</string>
<!-- The first parameter is the application name. This is a message shown to the user when too many errors have occurred with the addons process and they have been disabled. The user can decide if they would like to continue trying to start add-ons or if they'd rather continue without them. -->
- <string name="addon_process_crash_dialog_message" tools:ignore="UnusedResources">Gehigarri bat edo gehiago ez dabil eta zure sistema desegonkortzen ari da. %1$s saiatu da gehigarriak berrabiarazten, arrakastarik gabe.\n\nEz da gehigarririk berrabiaraziko zure uneko saioan.\n\nGeghiarriak kendu edo desgaitzeak arazoa konpon lezake.</string>
+ <string name="addon_process_crash_dialog_message" moz:removedIn="126" tools:ignore="UnusedResources">Gehigarri bat edo gehiago ez dabil eta zure sistema desegonkortzen ari da. %1$s saiatu da gehigarriak berrabiarazten, arrakastarik gabe.\n\nEz da gehigarririk berrabiaraziko zure uneko saioan.\n\nGeghiarriak kendu edo desgaitzeak arazoa konpon lezake.</string>
+ <!-- This is a message shown to the user when too many errors have occurred with the extensions process and they have been disabled.
+ The user can decide if they would like to continue trying to start extensions or if they'd rather continue without them.
+ The first parameter is the application name. -->
+ <string name="extension_process_crash_dialog_message">Hedapen bat edo gehiago ez dabil eta zure sistema desegonkortzen ari da. %1$s saiatu da hedapena(k) berrabiarazten, arrakastarik gabe.\n\nEz da hedapenik berrabiaraziko zure uneko saioan.\n\nHedapenak kendu edo desgaitzeak arazoa konpon lezake.</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
- <string name="addon_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Probatu gehigarriak berrabiarazten</string>
+ <string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Probatu gehigarriak berrabiarazten</string>
+ <!-- Button text on the extension crash dialog to prompt the user to try restarting the extensions but the dialog will reappear if it is unsuccessful again -->
+ <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Saiatu hedapenak berrabiarazten</string>
<!-- The user will continue with all add-ons disabled -->
- <string name="addon_process_crash_dialog_disable_addons_button_text" tools:ignore="UnusedResources">Jarraitu gehigarriak desgaituta</string>
+ <string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Jarraitu gehigarriak desgaituta</string>
+
+ <!-- Button text on the extension crash dialog to prompt the user to continue with all extensions disabled. -->
+ <string name="extension_process_crash_dialog_disable_extensions_button_text">Jarraitu hedapenak desgaituta</string>
<!-- Account Preferences -->
<!-- Preference for managing your account via accounts.firefox.com -->
@@ -757,6 +871,14 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">%s gailuko fitxa</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s fitxa itxita: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ikusi itxitako azken fitxak</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Salbuespenak</string>
@@ -2443,10 +2565,14 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<string name="translations_bottom_sheet_translate_from">Itzuli hemendik</string>
<!-- Label for the dropdown to select which language to translate to on the translations dialog. Usually the translate to language selected will be the user's preferred language. -->
<string name="translations_bottom_sheet_translate_to">Itzuli hona</string>
+ <!-- Label for the dropdown to select which language to translate from on the translations dialog when the page language is not supported. This selection is to allow the user to select another language, in case we automatically detected the page language incorrectly. -->
+ <string name="translations_bottom_sheet_translate_from_unsupported_language">Probatu beste iturburu-hizkuntza bat</string>
<!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button">Une honetan ez</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Erakutsi jatorrizkoa</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Jatorrizko itzuli gabeko orria kargatuta</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Eginda</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2467,7 +2593,7 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
<string name="translation_error_language_not_supported_warning_text">Barkatu, %1$s ez dugu onartzen oraindik.</string>
<!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
- <string name="translation_error_language_not_supported_learn_more">Argibide gehiago</string>
+ <string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">Argibide gehiago</string>
<!-- Snackbar title shown if the user closes the Translation Request dialogue and a translation is in progress. -->
<string name="translation_in_progress_snackbar">Itzultzen…</string>
@@ -2481,7 +2607,9 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<!-- Translations options dialog -->
<!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
- <string name="translation_option_bottom_sheet_title">Itzulpenen aukerak</string>
+ <string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">Itzulpenen aukerak</string>
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title_heading">Itzulpenen aukerak</string>
<!-- Toggle switch label that allows a user to set the setting if they would like the browser to always offer or suggest translations when available. -->
<string name="translation_option_bottom_sheet_always_translate">Eskaini beti itzultzea</string>
<!-- Toggle switch label that allows a user to set if they would like a given language to automatically translate or not. The first parameter is the language name, for example, "Spanish". -->
@@ -2500,6 +2628,9 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translation_option_bottom_sheet_about_translations">%1$s(e)ko itzulpenei buruz</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
+ <string name="translation_option_bottom_sheet_close_content_description">Itxi itzulpenen orria</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Itzulpenak</string>
@@ -2604,6 +2735,8 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<string name="download_language_file_dialog_title">Deskargatu datuak aurrezteko moduan egotean (%1$s)?</string>
<!-- Additional information for the data saving mode warning dialog used by the translations feature. This text explains the reason a download is required for a translation. -->
<string name="download_language_file_dialog_message_all_languages">Hizkuntzak erdizka deskargatzen ditugu zure cachera itzulpenak pribatu manten daitezen.</string>
+ <!-- Additional information for the data saving mode warning dialog used by the translations feature. This text explains the reason a download is required for a translation without mentioning the cache. -->
+ <string name="download_language_file_dialog_message_all_languages_no_cache">Hizkuntzak erdizka deskargatzen ditugu itzulpenak pribatu manten daitezen.</string>
<!-- Checkbox label text on the data saving mode warning dialog used by the translations feature. This checkbox allows users to ignore the data usage warnings. -->
<string name="download_language_file_dialog_checkbox_text">Deskargatu beti datuak aurrezteko moduan</string>
<!-- Button text on the data saving mode warning dialog used by the translations feature to allow users to confirm they wish to continue and download the language file. -->
@@ -2618,12 +2751,19 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<string name="debug_drawer_title">Arazketa-tresnak</string>
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Nabigatu atzera</string>
+
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Ireki arazketarako menu lerrakorra</string>
+
+ <!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Fitxen tresnak</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Fitxa kopurua</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktibo</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktibo</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktibo</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inaktibo</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2640,4 +2780,39 @@ zure pasahitzak, laster-markak eta gehiago zifratzen du.</string>
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">Gehitu fitxa inaktiboetara</string>
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Gehitu fitxa pribatuetara</string>
+
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Jarraitu</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Burutu inkesta</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Pribatutasun-oharra</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Bidali</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label">Itxi</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Eskerrik asko zure iritziagatik!</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Oso kontent</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Kontent</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Neutrala</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Kontentagaitz</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Oso kontentagaitz</string>
+
+ <!-- Debug drawer logins -->
+ <!-- The title of the Logins feature in the Debug Drawer. -->
+ <string name="debug_drawer_logins_title">Saio-hasierak</string>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Uneko domeinua: %s</string>
+ <!-- The label for a button to add a new fake login for the current domain in the Logins feature. -->
+ <string name="debug_drawer_logins_add_login_button">Gehitu saio-hasiera faltsua domeinu honetarako</string>
+ <!-- Content description for delete button where parameter will be the username of the login -->
+ <string name="debug_drawer_logins_delete_login_button_content_description">Ezabatu %s erabiltzaile-izena duen saio-hasiera</string>
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-fi/strings.xml b/mobile/android/fenix/app/src/main/res/values-fi/strings.xml
index aa7be14543..004d8494cd 100644
--- a/mobile/android/fenix/app/src/main/res/values-fi/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-fi/strings.xml
@@ -201,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Lisäosat</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Laajennukset</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Hallitse laajennuksia</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Löydä lisää laajennuksia</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Tilin tiedot</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -219,6 +223,8 @@
<string name="browser_menu_open_in_regular_tab">Avaa tavallisessa välilehdessä</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Lisää aloitusnäytölle</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Lisää aloitusnäytölle…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Asenna</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -230,10 +236,14 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Käännä sivu</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Tallenna kokoelmaan…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Tallenna kokoelmaan</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Jaa</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Jaa…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Avaa sovelluksessa %1$s</string>
@@ -288,6 +298,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Tallenna</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Lisää tämä sivu kirjanmerkkeihin</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Muokkaa kirjanmerkkiä</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Tallenna PDF-muodossa…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Avaa lukunäkymä</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Sulje lukunäkymä</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Käännä sivu…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Käännetty kielelle %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Tulosta…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Täällä ei ole laajennuksia</string>
@@ -385,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefoxin tietosuojakäytäntö</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Lue lisää tietosuojakäytännöstämme</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Turvaamisesi on tärkeää meille</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -596,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">Kieli</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Käännös</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Käännös</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Käännökset</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Tietovalinnat</string>
<!-- Preference for data collection -->
@@ -670,10 +698,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Pakollinen</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Valinnainen</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Lue ja muuta verkkosivuston dataa</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Poista verkkosivusto</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Salli kaikille sivustoille</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -799,8 +823,6 @@
<string name="preferences_sync_history">Historia</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Kirjanmerkit</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Kirjautumistiedot</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Salasanat</string>
<!-- Preference for syncing tabs -->
@@ -827,8 +849,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s laitteella %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Luottokortit</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Maksutavat</string>
<!-- Preference for syncing addresses -->
@@ -844,6 +864,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Välilehti laitteesta %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s-välilehtiä suljettu: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Näytä viimeksi suljetut välilehdet</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Poikkeukset</string>
@@ -1783,12 +1811,8 @@
<string name="add_to_homescreen_description_2">Voit lisätä tämän sivuston laitteesi aloitusnäytölle, jolloin sivuston käyttö onnistuu nopeasti ja tarjoaa sovelluksen kaltaisen kokemuksen.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Käyttäjätunnukset ja salasanat</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Salasanat</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Tallenna käyttäjätunnukset ja salasanat</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Tallenna salasanat</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Kysy tallennusta</string>
@@ -1804,46 +1828,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Täytä käyttäjätunnukset ja salasanat muissa laitteesi sovelluksissa.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Lisää kirjautumistieto</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Lisää salasana</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkronoi kirjautumistiedot</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synkronoi salasanat</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkronoi kirjautumistiedot laitteiden välillä</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synkronoi salasanat eri laitteiden välillä</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Tallennetut kirjautumistiedot</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Tallennetut salasanat</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">%siin tallentamasi tai synkronoimasi kirjautumistiedot näkyvät täällä.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">%siin tallentamasi tai synkronoimasi salasanat näkyvät tässä. Kaikki tallentamasi salasanat ovat salattuja.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Lue lisää Syncista.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Lisätietoja synkronoinnista</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Poikkeukset</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Käyttäjätunnukset ja salanat, joita ei tallenneta, näytetään täällä.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s ei tallenna tässä lueteltujen sivustojen salasanoja.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Käyttäjätunnuksia ja salasanoja ei tallenneta näille sivustoille.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s ei tallenna näiden sivustojen salasanoja.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Poista kaikki poikkeukset</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Etsi kirjautumistiedoista</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Etsi salasanoja</string>
<!-- The header for the site that a login is for -->
@@ -1872,17 +1877,11 @@
<string name="saved_login_reveal_password">Näytä salasana</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Piilota salasana</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Avaa lukitus nähdäksesi tallennetut kirjautumistiedot</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Avaa lukitus nähdäksesi tallennetut salasanat</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Suojaa käyttäjätunnuksesi ja salasanasi</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Suojaa tallennetut salasanat</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Aseta laitteen avaukseen tarkoitettu kuvio, PIN-koodi tai salasana suojataksesi tallennetut kirjautumistiedot ja salasanat siltä varalta, että joku saa laitteesi haltuunsa.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Määritä laitteen lukituskuvio, PIN-koodi tai salasana suojataksesi tallennettuja salasanojasi, jos laitteesi on jollain toisella.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Myöhemmin</string>
@@ -1900,8 +1899,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nimi (A-Ö)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Viimeksi käytetty</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Järjestä kirjautumistietojen valikko</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Salasanojen järjestysvalikko</string>
@@ -1911,41 +1908,27 @@
<string name="preferences_autofill">Automaattinen täyttö</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Osoitteet</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Luottokortit</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Maksutavat</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tallenna ja täytä kortit automaattisesti</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Tallenna ja täytä maksutavat</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Tiedot on salattu</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s salaa kaikki tallentamasi maksutavat</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synkronoi kortit laitteiden välillä</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synkronoi kortit</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Lisää luottokortti</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Lisää kortti</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Hallinnoi tallennettuja kortteja</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Hallitse kortteja</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Lisää osoite</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Hallitse osoitteita</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Tallenna ja täytä osoitteet automaattisesti</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Tallenna ja täytä osoitteet</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Sisällytä tiedot kuten numerot, sähköpostiosoitteet ja toimitusosoitteet</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Sisältää puhelinnumerot ja sähköpostiosoitteet</string>
@@ -1969,8 +1952,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Poista kortti</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Haluatko varmasti poistaa tämän luottokortin?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Poistetaanko kortti?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Poista</string>
@@ -1984,24 +1965,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Tallennetut kortit</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Kirjoita kelvollinen luottokortin numero</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Anna kelvollinen kortin numero</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Täytä tämä kenttä</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Lisää nimi</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Avaa lukitus nähdäksesi tallennetut kortit</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Suojaa luottokorttisi</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Suojaa tallennetut maksutavat</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Aseta laitteen avaukseen tarkoitettu kuvio, PIN-koodi tai salasana suojataksesi tallennetut luottokorttitiedot siltä varalta, että joku saa laitteesi haltuunsa.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Määritä laitteen lukituskuvio, PIN-koodi tai salasana suojataksesi tallennettuja maksutapojasi, jos laitteesi on jollain toisella.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Aseta nyt</string>
@@ -2010,9 +1982,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Avaa laitteen lukitus</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Avaa lukitus käyttääksesi tallennettuja luottokorttitietoja</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Avaa lukitus käyttääksesi tallennettuja maksutapoja</string>
<!-- Title of the "Add address" screen -->
@@ -2021,12 +1990,6 @@
<string name="addresses_edit_address">Muokkaa osoitetta</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Hallitse osoitteita</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Etunimi</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Toinen nimi</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Sukunimi</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nimi</string>
<!-- The header for the street address of an address -->
@@ -2053,8 +2016,6 @@
<string name="addressess_delete_address_button">Poista osoite</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Haluatko varmasti poistaa tämän osoitteen?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Poistetaanko tämä osoite?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Poista</string>
@@ -2153,49 +2114,29 @@
<string name="login_menu_delete_button">Poista</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Muokkaa</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Haluatko varmasti poistaa tämän kirjautumistiedon?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Haluatko varmasti poistaa tämän salasanan?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Poista</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Peruuta</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Kirjautumistietojen valinnat</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Salasanojen asetukset</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Muokattava tekstikenttä kirjautumisen verkkosivua varten.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Verkkosivuston muokattava tekstikenttä.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Muokattava tekstikenttä kirjautumisen käyttäjätunnusta varten.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Käyttäjätunnuksen muokattava tekstikenttä.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Muokattava tekstikenttä kirjautumisen salasanaa varten.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Salasanan muokattava tekstikenttä.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Tallenna muutokset kirjautumistietoihin.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Tallenna muutokset.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Muokkaa</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Muokkaa salasanaa</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Lisää uusi kirjautumistieto</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Lisää salasana</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Salasana vaaditaan</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Kirjoita salasana</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Käyttäjätunnus vaaditaan</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Kirjoita käyttäjätunnus</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Isäntänimi vaaditaan</string>
@@ -2582,6 +2523,11 @@
<!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translation_option_bottom_sheet_about_translations">Tietoja käännöksistä %1$sissa</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
+ <string name="translation_option_bottom_sheet_close_content_description">Sulje käännössivu</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Jotkut asetukset eivät ole tilapäisesti käytettävissä.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Käännökset</string>
@@ -2606,6 +2552,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Valitse kieli hallitaksesi &quot;käännä aina&quot;- ja &quot;älä käännä koskaan&quot;-asetuksia.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Kieliä ei voitu ladata. Tarkista myöhemmin uudelleen.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Tarjoa käännöstä (oletus)</string>
@@ -2629,6 +2578,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Poista %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Sivustoja ei voitu ladata. Tarkista myöhemmin uudelleen.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Poistetaanko %1$s?</string>
@@ -2706,13 +2657,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Siirry taaksepäin</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Avaa vianjäljitysvalikko</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Välilehtityökalut</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Välilehtien määrä</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktiivinen</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktiivinen</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktiivinen</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Passiivinen</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2723,6 +2679,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Välilehtien luontityökalu</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Luotavien välilehtien määrä</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Tekstikenttä on tyhjä</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Anna vain positiivisia kokonaislukuja</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Anna numero, joka on suurempi kuin nolla</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Yhdellä toiminnolla luotavien välilehtien enimmäismäärä (%1$s) täynnä</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Lisää aktiivisiin välilehtiin</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2739,11 +2705,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Tietosuojakäytäntö</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Lähetä</string>
+ <string name="micro_survey_submit_button_label">Lähetä</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Sulje</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Sulje</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Kiitos palautteestasi!</string>
+ <string name="micro_survey_feedback_confirmation">Kiitos palautteestasi!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Hyvin tyytyväinen</string>
<!-- Option for likert scale -->
@@ -2755,6 +2721,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Hyvin tyytymätön</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Avaa kysely</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Sulje kysely</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Sulje</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Kirjautumistiedot</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-fr/strings.xml b/mobile/android/fenix/app/src/main/res/values-fr/strings.xml
index 59aafe7a2d..d39900ddce 100644
--- a/mobile/android/fenix/app/src/main/res/values-fr/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-fr/strings.xml
@@ -202,6 +202,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Modules complémentaires</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensions</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gérer les extensions</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Découvrir d’autres extensions</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informations du compte</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -220,6 +224,8 @@
<string name="browser_menu_open_in_regular_tab">Ouvrir dans un onglet classique</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Ajouter à l’écran d’accueil</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Ajouter à l’écran d’accueil…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installer</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -231,9 +237,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traduire la page</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Enregistrer dans une collection…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Enregistrer dans une collection</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Partager</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Partager…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Ouvrir avec %1$s</string>
@@ -288,6 +298,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Enregistrer</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Marquer cette page</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Modifier le marque-page</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Enregistrer en PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Passer en mode lecture</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Quitter le mode lecture</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traduire la page…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traduit en %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimer…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Aucune extension disponible</string>
@@ -385,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Politique de confidentialité de Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">En savoir plus dans notre politique de confidentialité</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Votre protection compte pour nous</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -596,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">Langues</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Traduction</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traduction</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traductions</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Choix de données</string>
<!-- Preference for data collection -->
@@ -670,10 +698,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Obligatoire</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Facultatif</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Consulter et modifier les données de sites web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Supprimer le site web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Autoriser pour tous les sites</string>
@@ -799,8 +823,6 @@
<string name="preferences_sync_history">Historique</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marque-pages</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Identifiants</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Mots de passe</string>
<!-- Preference for syncing tabs -->
@@ -827,8 +849,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s sur %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartes bancaires</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Moyens de paiement</string>
<!-- Preference for syncing addresses -->
@@ -846,6 +866,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Onglet provenant de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%2$d onglets fermés sur %1$s</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Afficher les onglets récemment fermés</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Exceptions</string>
@@ -1798,12 +1826,8 @@
<string name="add_to_homescreen_description_2">Vous pouvez facilement ajouter ce site à l’écran d’accueil de votre appareil pour y avoir accès directement et naviguer plus rapidement, comme si vous utilisiez une application.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Identifiants et mots de passe</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Mots de passe</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Enregistrer les identifiants et les mots de passe</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Enregistrer les mots de passe</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Demander pour enregistrer</string>
@@ -1819,46 +1843,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Remplit les noms d’utilisateur et les mots de passe dans d’autres applications sur votre appareil.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Ajouter un identifiant</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Ajouter un mot de passe</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchroniser les identifiants</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synchroniser les mots de passe</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchroniser les identifiants entre vos appareils</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synchronisez les mots de passe entre vos appareils</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Identifiants enregistrés</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Mots de passe enregistrés</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Les identifiants que vous enregistrez ou synchronisez avec %s s’afficheront ici.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Les mots de passe que vous enregistrez ou synchronisez avec %s seront répertoriés ici. Tous les mots de passe que vous enregistrez sont chiffrés.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">En savoir plus sur Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">En savoir plus sur la synchronisation</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Exceptions</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Les identifiants et les mots de passe qui ne sont pas enregistrés seront affichés ici.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s n’enregistrera pas les mots de passe pour les sites listés ici.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Les identifiants et les mots de passe ne seront pas enregistrés pour ces sites.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s n’enregistrera pas les mots de passe pour ces sites.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Supprimer toutes les exceptions</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Rechercher des identifiants</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Rechercher des mots de passe</string>
<!-- The header for the site that a login is for -->
@@ -1887,17 +1892,11 @@
<string name="saved_login_reveal_password">Afficher le mot de passe</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Masquer le mot de passe</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Déverrouillez pour afficher vos identifiants enregistrés</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Déverrouillez pour afficher vos mots de passe enregistrés</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Protégez vos identifiants et mots de passe</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Sécurisez les mots de passe enregistrés</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configurez un schéma de verrouillage, un code PIN ou un mot de passe pour protéger vos identifiants de connexion et mots de passe enregistrés pour le cas où quelqu’un accède à votre appareil.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Configurez un schéma de verrouillage, un code PIN ou un mot de passe pour protéger vos mots de passe enregistrés si jamais quelqu’un accède à votre appareil.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Plus tard</string>
@@ -1914,8 +1913,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nom (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Dernière utilisation</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Menu de tri des identifiants</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menu de tri des mots de passe</string>
@@ -1925,41 +1922,27 @@
<string name="preferences_autofill">Remplissage automatique</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresses</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartes bancaires</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Moyens de paiement</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Enregistrer et remplir automatiquement les cartes</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Enregistrer et renseigner les moyens de paiement</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Les données sont chiffrées</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s chiffre tous les moyens de paiement que vous enregistrez</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synchroniser les cartes entre vos appareils</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synchroniser les cartes</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Ajouter une carte bancaire</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Ajouter une carte</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gérer les cartes enregistrées</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Gérer les cartes</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Ajouter une adresse</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Gérer les adresses</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Enregistrer et remplir automatiquement les adresses</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Enregistrer et remplir automatiquement les adresses</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Cela comprend des informations telles que des numéros, des adresses e-mail et des adresses d’expédition</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Y compris les numéros de téléphone et les adresses e-mail</string>
@@ -1983,8 +1966,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Supprimer la carte</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Voulez-vous vraiment supprimer cette carte bancaire ?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Supprimer la carte ?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Supprimer</string>
@@ -1998,24 +1979,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Cartes enregistrées</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Veuillez saisir un numéro de carte bancaire valide</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Saisissez un numéro de carte valide</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Veuillez compléter ce champ</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Ajouter un nom</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Déverrouillez pour afficher vos cartes enregistrées</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Protégez vos cartes bancaires</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Sécurisez vos moyens de paiement enregistrés</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configurez un schéma de verrouillage, un code PIN ou un mot de passe pour protéger vos cartes bancaires enregistrées si jamais quelqu’un accède à votre appareil.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Configurez un schéma de verrouillage, un code PIN ou un mot de passe pour protéger vos moyens de paiement enregistrés si jamais quelqu’un accède à votre appareil.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurer maintenant</string>
@@ -2023,8 +1995,6 @@
<string name="credit_cards_warning_dialog_later">Plus tard</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Déverrouillez votre appareil</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Déverrouillez pour utiliser les informations de cartes bancaires enregistrées</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Déverrouillez pour utiliser des moyens de paiement enregistrés</string>
@@ -2034,12 +2004,6 @@
<string name="addresses_edit_address">Modifier l’adresse</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Gérer les adresses</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Prénom</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Deuxième prénom</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Nom de famille</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nom complet</string>
<!-- The header for the street address of an address -->
@@ -2066,8 +2030,6 @@
<string name="addressess_delete_address_button">Supprimer l’adresse</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Voulez-vous vraiment supprimer cette adresse ?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Supprimer cette adresse ?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Supprimer</string>
@@ -2165,49 +2127,29 @@
<string name="login_menu_delete_button">Supprimer</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Modifier</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Voulez-vous vraiment supprimer cet identifiant ?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Voulez-vous vraiment supprimer ce mot de passe ?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Supprimer</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Annuler</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Options de l’identifiant</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Options de mot de passe</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Le champ de texte modifiable pour l’adresse web de l’identifiant.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Le champ de texte modifiable pour l’adresse du site web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Le champ de texte modifiable pour le nom d’utilisateur de l’identifiant.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Le champ de texte modifiable pour le nom d’utilisateur.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Le champ de texte modifiable pour le mot de passe de l’identifiant.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Le champ de texte modifiable pour le mot de passe.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Enregistrez les modifications de l’identifiant.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Enregistrer les modifications.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Modifier</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Modifier le mot de passe</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Ajouter un nouvel identifiant</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Ajouter un mot de passe</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Mot de passe requis</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Saisissez un mot de passe</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Le nom d’utilisateur doit être renseigné.</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Saisissez un nom d’utilisateur</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Le nom d’hôte est requis</string>
@@ -2617,6 +2559,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Fermer l’onglet Traductions</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Certains paramètres sont temporairement indisponibles.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traductions</string>
@@ -2640,6 +2585,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Sélectionnez une langue pour gérer les préférences « Toujours traduire » et « Ne jamais traduire ».</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Impossible de charger les langues. Veuillez réessayer plus tard.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Proposer de traduire (par défaut)</string>
@@ -2662,6 +2610,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Supprimer %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Impossible de charger des sites. Veuillez réessayer plus tard.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Supprimer %1$s ?</string>
@@ -2739,13 +2689,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Revenir</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Ouvrir le panneau de débogage</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Outils d’onglets</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Nombre d’onglets</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Actifs</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Actifs</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Actif</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactifs</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2756,6 +2711,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Outil de création d’onglets</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Nombre d’onglets à créer</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Le champ de texte est vide</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Saisissez uniquement des nombres entiers positifs</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Saisissez un nombre supérieur à zéro</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Vous avez dépassé le nombre maximal d’onglets (%1$s) qui peuvent être générés en une seule opération</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Ajouter aux onglets actifs</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2772,11 +2737,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Politique de confidentialité</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Envoyer</string>
+ <string name="micro_survey_submit_button_label">Envoyer</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Fermer</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Fermer</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Merci de votre retour !</string>
+ <string name="micro_survey_feedback_confirmation">Merci de votre retour !</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Très satisfait·e</string>
<!-- Option for likert scale -->
@@ -2788,6 +2753,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Très insatisfait·e</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Ouvrir le sondage</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Fermer le sondage</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Fermer</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Identifiants</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-fur/strings.xml b/mobile/android/fenix/app/src/main/res/values-fur/strings.xml
index 8f59de5cbf..20676406c0 100644
--- a/mobile/android/fenix/app/src/main/res/values-fur/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-fur/strings.xml
@@ -199,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Components adizionâi</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Estensions</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gjestìs estensions</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Scuvierç altris estensions</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informazions account</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -217,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">Vierç intune schede normâl</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Zonte a schermade principâl</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Zonte a scherm. di inizi…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instale</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -228,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Tradûs pagjine</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Salve intune racuelte…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Salve intune racuelte</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Condivît</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Condivît…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Vierç in %1$s</string>
@@ -283,6 +293,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Salve</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Zonte pagjine ai segnelibris</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Modifiche segnelibri</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Salve come PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Ative Viodude di leture</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Disative Viodude di leture</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Tradûs pagjine…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Voltade par %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Stampe…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Nissune estension achì</string>
@@ -377,8 +405,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Informative su la riservatece di Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Plui informazions te nestre informative su la riservatece</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Nus plâs tignîti di cont</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -594,7 +620,9 @@
<!-- Preference for translation -->
- <string name="preferences_translation">Traduzion</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traduzion</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traduzions</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Sielte di dâts</string>
<!-- Preference for data collection -->
@@ -665,10 +693,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Obligatori</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Facoltatîf</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Lei e modificâ i dâts dai sîts web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Elimine sît web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permet par ducj i sîts</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -797,8 +821,6 @@
<string name="preferences_sync_history">Cronologjie</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Segnelibris</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenziâls</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Passwords</string>
<!-- Preference for syncing tabs -->
@@ -823,8 +845,6 @@
The first parameter is the application name, the second is the device manufacturer name
and the third is the device model. -->
<string name="default_device_name_2">%1$s su %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cjartis di credit</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Metodis di paiament</string>
<!-- Preference for syncing addresses -->
@@ -841,6 +861,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Schede di %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Schedis di %1$s sieradis: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Viôt schedis sieradis di resint</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Ecezions</string>
@@ -1770,12 +1798,8 @@
<string name="add_to_homescreen_description_2">Al è pussibil zontâ chest sît web ae schermade principâl dal dispositîf par doprâle cun plui sveltece, tant che e fos une aplicazion.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenziâls e passwords</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Passwords</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Salve credenziâls e passwords</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Salve passwords</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Domande prime di salvâ</string>
@@ -1789,48 +1813,30 @@
<string name="preferences_android_autofill">Compile in automatic in altris aplicazions</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Compile i nons utent e lis passwords in altris aplicazions dal to dispositîf.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Zonte credenziâl</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Zonte password</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronize lis credenziâls</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronize passwords</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronize lis credenziâls tra dispositîfs</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronize passwords tra i tiei dispositîfs</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenziâls salvadis</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Passwords salvadis</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Lis credenziâls che tu salvis o sincronizis su %s a vignaran fûr achì.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Lis passwords salvadis o sincronizadis su %s a vignaran listadis achì. Dutis lis passwords che tu salvis a vegnin cifradis.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Plui informazions su Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Plui informazions su la sincronizazion</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Ecezions</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Lis credenziâls e lis passwords che no tu âs salvât a vignaran fûr achì.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s nol salvarà lis passwords pai sîts listâts achì.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Lis credenziâls e lis passwords no vignaran salvadis par chescj sîts.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s nol salvarà lis passwords par chescj sîts.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Elimine dutis lis ecezions</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Cîr credenziâls</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Cîr tes passwords</string>
<!-- The header for the site that a login is for -->
@@ -1859,17 +1865,11 @@
<string name="saved_login_reveal_password">Mostre password</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Plate password</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Sbloche par visualizâ lis credenziâls salvadis</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Sbloche par viodi lis passwords salvadis</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Protêç lis tôs credenziâls di acès</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Protêç lis passwords salvadis</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configure une secuence di bloc, PIN o password par protezi lis tôs credenziâls e lis passwords salvadis, cussì che se cualchidun altri al varà il to dispositîf nol rivarà a doprâlis.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Configure une secuence di bloc, PIN o password par protezi lis passwords salvadis, cussì che se cualchidun altri al varà il to dispositîf nol rivarà a doprâlis.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Plui indenant</string>
@@ -1885,8 +1885,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Non (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Ultime doprade</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ordene il menù des credenziâls</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menù par ordenâ lis passwords</string>
@@ -1896,41 +1894,27 @@
<string name="preferences_autofill">Compilazion automatiche</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Recapits</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cjartis di credit</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Metodis di paiament</string>
- <!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Salve e compile in automatic lis cjartis</string>
<!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Salve e compile i metodis di paiament</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">I dâts a son cifrâts</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s al cifre ducj i metodis di paiaments salvâts</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronize lis cjartis tra plui dispositîfs</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronize cjartis di credit</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Zonte cjarte di credit</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Zonte cjarte</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gjestìs cjartis salvadis</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Gjestìs cjartis</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Zonte recapit</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Gjestìs recapits</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Salve e compile in automatic i recapits</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Salve e compile direzions</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Includi informazions come numars, e-mail e recapits di spedizion</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Inclût numars di telefon e direzions e-mail</string>
@@ -1954,8 +1938,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Elimine cjarte</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Eliminâ pardabon cheste cjarte di credit?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Eliminâ la cjarte?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Elimine</string>
@@ -1967,24 +1949,16 @@
<string name="credit_cards_cancel_button">Anule</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Cjartis salvadis</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Inserìs un numar di cjarte di credit valit</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Inserìs un numar di cjarte valit</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Compile chest cjamp</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Zonte un non</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Sbloche par visualizâ lis cjartis di credit salvadis</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Protêç lis tôs cjartis di credit</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Protêç i metodis di paiament salvâts</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configure une secuence di bloc, PIN o password par protezi lis tôs cjartis di credit salvadis, cussì che se cualchidun altri al varà il to dispositîf nol rivarà a doprâlis.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Configure une secuence di bloc, PIN o password par protezi i tiei metodis di paiament salvâts, cussì che se cualchidun altri al varà il to dispositîf nol rivarà a doprâju.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configure cumò</string>
@@ -1992,8 +1966,6 @@
<string name="credit_cards_warning_dialog_later">Plui indenant</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Sbloche il dispositîf</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Sbloche par doprâ lis informazions des cjartis di credit memorizadis</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Sbloche par doprâ i metodis di paiament</string>
<!-- Title of the "Add address" screen -->
@@ -2002,12 +1974,6 @@
<string name="addresses_edit_address">Modifiche recapit</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Gjestìs recapits</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Non</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Secont non</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Cognon</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Non</string>
<!-- The header for the street address of an address -->
@@ -2033,8 +1999,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Elimine recapit</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Eliminâ pardabon chest recapit?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Eliminâ cheste direzion?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Elimine</string>
@@ -2132,49 +2096,29 @@
<string name="login_menu_delete_button">Elimine</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Modifiche</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Eliminâ pardabon cheste credenziâl?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Eliminâ pardabon cheste password?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Elimine</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Anule</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opzions credenziâls</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opzions password</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Il cjamp di test modificabil pe direzion web de credenziâl.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Il cjamp di test che si pues modificâ pe direzion dal sît web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Il cjamp di test modificabil pal non utent de credenziâl.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Il cjamp di test che si pues modificâ pal non utent.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Il cjamp di test modificabil pe password de credenziâl.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Il cjamp di test che si pues modificâ pe password.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Salve lis modifichis ae credenziâl.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Salve modifichis.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Modifiche</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Modifiche password</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Zonte gnove credenziâl</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Zonte password</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Password necessarie</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Inserìs une password</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Non utent necessari</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Inserìs un non utent</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Non servidôr necessari</string>
@@ -2524,6 +2468,8 @@
<string name="translations_bottom_sheet_negative_button">No cumò</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Mostre origjinâl</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Cjariade pagjine origjinâl no tradote</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Fat</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2582,6 +2528,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Siere il sfuei des traduzions</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Cualchi impostazion no je pal moment disponibile.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traduzions</string>
@@ -2604,6 +2553,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Selezione une lenghe par gjestî lis preferencis ”tradûs simpri“ e ”no sta tradusi mai“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Impussibil cjariâ lis lenghis. Torne controle plui tart.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Propon la traduzion (predefinide)</string>
@@ -2626,6 +2578,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Gjave %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Impussibil cjariâ i sîts. Torne controle plui tart.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Eliminâ %1$s?</string>
@@ -2707,13 +2661,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Torne indaûr</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Vierç scansel pal debug</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Struments des schedis</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Conte des schedis</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Ative</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Ative</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Ativis</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inative</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2724,6 +2683,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Strument pe creazion di schedis</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Numar di schedis di creâ</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Il cjamp di test al è vueit</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Inserìs dome numars intîrs positîfs</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Inserìs un numar plui grant di zero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Al è stât superât il numar massim di schedis (%1$s) che al è pussibil gjenerâ cuntune sole operazion</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Zonte a schedis ativis</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2740,11 +2709,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Informative su la riservatece</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Invie</string>
+ <string name="micro_survey_submit_button_label">Invie</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Siere</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Siere</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Graciis di vê condividude la tô opinion.</string>
+ <string name="micro_survey_feedback_confirmation">Graciis di vê condividude la tô opinion.</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Une vore sodisfat(e)</string>
<!-- Option for likert scale -->
@@ -2756,6 +2725,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Une vore insodisfat(e)</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Vierç sondaç</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Siere sondaç</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Siere</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Credenziâls</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-fy-rNL/strings.xml b/mobile/android/fenix/app/src/main/res/values-fy-rNL/strings.xml
index 0e0ce000f9..201fbd157c 100644
--- a/mobile/android/fenix/app/src/main/res/values-fy-rNL/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-fy-rNL/strings.xml
@@ -200,6 +200,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Add-ons</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Utwreidingen</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Utwreidingen beheare</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Mear útwreidingen ûntdekke</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Accountynformaasje</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -219,6 +223,8 @@
<string name="browser_menu_open_in_regular_tab">Iepenje yn gewoan ljepblêd</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Tafoegje oan startskerm</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Tafoegje oan startskerm…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Ynstallearje</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -230,9 +236,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Side oersette</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Yn kolleksje bewarje…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Yn kolleksje bewarje</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Diele</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Diele…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Iepenje yn %1$s</string>
@@ -285,6 +295,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Bewarje</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Blêdwizer foar dizze side meitsje</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Blêdwizer bewurkje</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Bewarje as PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Lêzerwerjefte ynskeakelje</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Lêzerwerjefte útskeakelje</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Side oersette…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Oerset nei %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Ofdrukke…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Gjin útwreidingen hjir</string>
@@ -382,8 +410,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox-privacyferklearring</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Lês mear yn ús privacyferklearring</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Wy hâlde jo graach feilich</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -591,7 +617,9 @@
<!-- Preference for language -->
<string name="preferences_language">Taal</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Oersetting</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Oersetting</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Oersettingen</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Gegevenskarren</string>
<!-- Preference for data collection -->
@@ -665,10 +693,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Fereaske</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opsjoneel</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Websitegegevens lêze en wizigje</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Website fuortsmite</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Tastean foar alle websites</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -793,8 +817,6 @@
<string name="preferences_sync_history">Skiednis</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Blêdwizers</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmeldingen</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Wachtwurden</string>
<!-- Preference for syncing tabs -->
@@ -821,8 +843,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s op %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Creditcards</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Betellingsmetoaden</string>
<!-- Preference for syncing addresses -->
@@ -838,6 +858,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Ljepblêd fan %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s-ljepblêden sluten: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Koartlyn sluten ljepblêden besjen</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Utsûnderingen</string>
@@ -1760,12 +1788,8 @@
<string name="add_to_homescreen_description_2">Jo kinne dizze website ienfâldich oan it startskerm fan jo apparaat tafoegje, om sa daliks tagong te hawwen en flugger te navigearjen mei in app-eftige ûnderfining.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmeldingen en wachtwurden</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Wachtwurden</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmeldingen en wachtwurden bewarje</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Wachtwurden bewarje</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Freegje om te bewarjen</string>
@@ -1780,47 +1804,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Brûkersnammen en wachtwurden yn oare apps op jo apparaat ynfolje.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmelding tafoegje</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Wachtwurd tafoegje</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmeldingen syngronisearje</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Wachtwurden syngronisearje</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmeldingen op apparaten syngronisearje</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Wachtwurden syngronisearje tusken apparaten</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Bewarre oanmeldingen</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Bewarre wachtwurden</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">De oanmeldingen dy’t jo bewarje of syngronisearje mei %s wurde hjir toand.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">De wachtwurden dy’t jo bewarje of syngronisearje mei %s sille hjir fermeld wurde. Alle wachtwurden dy’t jo bewarje binne fersifere.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Mear ynfo oer Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Mear ynfo oer syngronisaasje</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Utsûnderingen</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Net-bewarre oanmeldingen en wachtwurden wurde hjir werjûn.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s sil gjin wachtwurden foar de hjir fermelde websites bewarje.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmeldingen en wachtwurden wurde foar dizze websites net bewarre. </string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s sil gjin wachtwurden foar dizze websites bewarje.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Alle útsûnderingen fuortsmite</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmeldingen sykje</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Wachtwurden sykje</string>
<!-- The header for the site that a login is for -->
@@ -1849,17 +1854,11 @@
<string name="saved_login_reveal_password">Wachtwurd toane</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Wachtwurd ferstopje</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Untskoattelje om jo bewarre oanmeldingen te besjen</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Untskoattelje om jo bewarre wachtwurden te besjen</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Befeiligje jo oanmeldingen en wachtwurden</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Befeiligje jo bewarre wachtwurden</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Stel in beskoattelingspatroan, pinkoade of wachtwurd foar jo apparaat yn om jo bewarre oanmeldingen en wachtwurden te beskermjen tsjin tagong as in oar jo apparaat hat.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Stel in beskoattelingspatroan, pinkoade of wachtwurd foar jo apparaat yn om jo bewarre wachtwurden te beskermjen tsjin tagong as in oar jo apparaat hat.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Letter</string>
@@ -1876,8 +1875,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Namme (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Lêst brûkt</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Menu Oanmeldingen sortearje</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Wachtwurdmenu sortearje</string>
@@ -1887,41 +1884,27 @@
<string name="preferences_autofill">Automatysk ynfolje</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adressen</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Creditcards</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Betellingsmetoaden</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kaarten bewarje en automatysk ynfolje</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Betellingsmetoaden bewarje en ynfolje</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Gegevens binne fersifere</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s fersiferet alle betellingsmetoaden dy’t jo bewarje</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Kaarten syngronisearje tusken apparaten</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Kaarten syngronisearje</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Creditcard tafoegje</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Kaart tafoegje</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Bewarre kaarten beheare</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Kaarten beheare</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Adres tafoegje</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Adressen beheare</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Adressen bewarje en automatysk ynfolje</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Adressen bewarje en ynfolje</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Ynformaasje lykas nûmers, e-mail- en ferstjoeradressen tafoegje</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Ynklusyf telefoannûmers en e-mailadressen</string>
@@ -1946,8 +1929,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Kaart fuortsmite</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Binne jo wis dat jo dizze creditcard fuortsmite wolle?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Kaart fuortsmite?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Fuortsmite</string>
@@ -1961,23 +1942,14 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Bewarre kaarten</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Fier in jildich creditkaartnûmer yn</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Fier in jildich kaartnûmer yn</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Folje dit fjild yn</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Foegje in namme ta</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Untskoattelje om jo bewarre kaarten te besjen</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Befeiligje jo creditcards</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Befeiligje jo bewarre betelmetoaden</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Stel in beskoattelingspatroan, pinkoade of wachtwurd foar jo apparaat yn om jo bewarre creditcards te beskermjen tsjin tagong as in oar jo apparaat hat.</string>
<!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Stel in beskoattelingspatroan, pinkoade of wachtwurd foar jo apparaat yn om jo bewarre betellingsmetoaden te beskermjen tsjin tagong as in oar jo apparaat hat.</string>
@@ -1988,9 +1960,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Untskoattelje jo apparaat</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Untskoattelje om bewarre creditkaartynformaasje te brûken</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Untskoattelje om bewarre betellingsmetoaden te brûken</string>
<!-- Title of the "Add address" screen -->
@@ -1999,12 +1968,6 @@
<string name="addresses_edit_address">Adres bewurkje</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Adressen beheare</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Foarnamme</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Twadde namme</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Efternamme</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Namme</string>
<!-- The header for the street address of an address -->
@@ -2031,8 +1994,6 @@
<string name="addressess_delete_address_button">Adres fuortsmite</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Binne jo wis dat jo dit adres fuortsmite wolle?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Dit adres fuortsmite?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Fuortsmite</string>
@@ -2130,49 +2091,29 @@
<string name="login_menu_delete_button">Fuortsmite</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Bewurkje</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Binne jo wis dat jo dizze oanmelding fuortsmite wolle?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Binne jo wis dat jo dit wachtwurd fuortsmite wolle?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Fuortsmite</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Annulearje</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Oanmeldopsjes</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Wachtwurdopsjes</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">It bewurkbere tekstfjild foar it webadres fan de oanmelding.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">It bewurkbere tekstfjild foar it websiteadres.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">It bewurkbere tekstfjild foar de brûkersnamme fan de oanmelding.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">It bewurkbere tekstfjild foar de brûkersnamme.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">It bewurkbere tekstfjild foar it wachtwurd fan de oanmelding.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">It bewurkbere tekstfjild foar it wachtwurd.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Wizigingen oan oanmelding bewarje.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Wizigingen bewarje.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Bewurkje</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Wachtwurd bewurkje</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Nije oanmelding tafoegje</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Wachtwurd tafoegje</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Wachtwurd fereaske</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Folje in wachtwurd yn</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Brûkersnamme fereaske</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Folje in brûkersnamme yn</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Hostnamme fereaske</string>
@@ -2524,6 +2465,8 @@ Dizze analyze sil jo allinnich helpe om de beoardielingskwaliteit te beoardielen
<string name="translations_bottom_sheet_negative_button">No net</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Orizjineel toane</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Oarspronklik net-oersette side laden</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Dien</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2580,6 +2523,9 @@ Dizze analyze sil jo allinnich helpe om de beoardielingskwaliteit te beoardielen
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Blêd Oersettingen slute</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Guon ynstellingen binne tydlik net beskikber.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Oersettingen</string>
@@ -2602,6 +2548,9 @@ Dizze analyze sil jo allinnich helpe om de beoardielingskwaliteit te beoardielen
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Selektearje in taal om de foarkarren ‘Altyd oersette’ en ‘Nea oersette’ te behearen.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Kin talen net lade. Probearje it letter nochris.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Oanbiede om oer te setten (standert)</string>
@@ -2624,6 +2573,8 @@ Dizze analyze sil jo allinnich helpe om de beoardielingskwaliteit te beoardielen
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s fuortsmite</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Kin websites net lade. Probearje it letter nochris.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s fuortsmite?</string>
@@ -2702,13 +2653,18 @@ Dizze analyze sil jo allinnich helpe om de beoardielingskwaliteit te beoardielen
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Tebek blêdzje</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Debuglade iepenje</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Ljepblêdhelpmiddelen</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Oantal ljepblêden</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktyf</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktyf</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktyf</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Ynaktyf</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2719,6 +2675,16 @@ Dizze analyze sil jo allinnich helpe om de beoardielingskwaliteit te beoardielen
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Helpmiddel foar it oanmeitsjen fan ljepblêden</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Oantal oan te meitsjen ljepblêden</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Tekstfjild is leech</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Fier allinnich positive hiele getallen yn</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Fier in getal grutter dan nul yn</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Dit binne mear as it maksimale oantal ljepblêden (%1$s) dat yn ien bewurking oanmakke wurde kin</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Tafoegje oan aktive ljepblêden</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2735,11 +2701,11 @@ Dizze analyze sil jo allinnich helpe om de beoardielingskwaliteit te beoardielen
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Privacyferklearring</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Yntsjinje</string>
+ <string name="micro_survey_submit_button_label">Yntsjinje</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Slute</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Slute</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Tank foar jo kommentaar!</string>
+ <string name="micro_survey_feedback_confirmation">Tank foar jo kommentaar!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Hiel tefreden</string>
<!-- Option for likert scale -->
@@ -2751,6 +2717,14 @@ Dizze analyze sil jo allinnich helpe om de beoardielingskwaliteit te beoardielen
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Hiel ûntefreden</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Enkête iepenje</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Enkête slute</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Slute</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Oanmeldingen</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-gl/strings.xml b/mobile/android/fenix/app/src/main/res/values-gl/strings.xml
index 10e350b1c0..8f2f036b83 100644
--- a/mobile/android/fenix/app/src/main/res/values-gl/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-gl/strings.xml
@@ -196,6 +196,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Complementos</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensións</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Xestionar as extensións</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Descubre máis extensións</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Información da conta</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -214,6 +218,8 @@
<string name="browser_menu_open_in_regular_tab">Abrir na pestana normal</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Engadir á páxina de inicio</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Engadir á pantalla de inicio…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -225,9 +231,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traducir a páxina</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Gardar na colección…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Gardar na colección</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Compartir</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Compartir…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Aberto en %1$s</string>
@@ -279,6 +289,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Gardar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Marcar esta páxina</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Editar marcador</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Gardar como PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Activa a vista de lector</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Desactiva a vista de lector</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traducir a páxina…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traducido a %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimir…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Non hai extensións aquí</string>
@@ -374,8 +402,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Política de privacidade de Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Obtéña máis información no noso aviso de privacidade</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Encántanos telo seguro</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -584,7 +610,9 @@
<!-- Preference for language -->
<string name="preferences_language">Idioma</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Tradución</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Tradución</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traducións</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Escollas de datos</string>
<!-- Preference for data collection -->
@@ -655,10 +683,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Obrigatorio</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Le e cambia os datos do sitio web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Eliminar sitio web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permitir para todos os sitios</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -783,8 +807,6 @@
<string name="preferences_sync_history">Historial</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marcadores</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Identificacións</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Contrasinais</string>
<!-- Preference for syncing tabs -->
@@ -810,8 +832,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s en %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarxetas de crédito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Métodos de pago</string>
<!-- Preference for syncing addresses -->
@@ -827,6 +847,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Lapela de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s pestanas pechadas: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ver pestanas pechadas recentemente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Excepcións</string>
@@ -1748,12 +1776,8 @@
<string name="add_to_homescreen_description_2">Pode engadir facilmente este sitio web á pantalla de inicio do dispositivo para ter acceso instantáneo e navegar máis rápido cunha experiencia semellante á dunha aplicación.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Identificacións e contrasinais</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Contrasinais</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Gardar Inicios de sesión e contrasinais</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Gardar contrasinais</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Preguntar para gardar</string>
@@ -1768,46 +1792,28 @@
<string name="preferences_android_autofill">Completado automático noutras aplicacións</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Encher os nomes de usuario e os contrasinais noutras aplicacións do dispositivo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Engadir credenciais</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Engadir contrasinal</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar os inicios de sesión</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizar contrasinais</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar as credenciais entre dispositivos</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronizar os contrasinais entre dispositivos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Identificacións gardadas</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Contrasinais gardados</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Os inicios de sesión que garde ou sincronice co %s aparecerán aquí.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Os contrasinais que garde ou sincronice con %s listaranse aquí. Todos os contrasinais que garde están cifrados.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Obteña máis información sobre Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Obteña máis información sobre Sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Excepcións</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Aquí mostraranse os inicios de sesión e os contrasinais que non se garden.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s non gardará os contrasinais dos sitios que aparecen aquí.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Non se gardarán os inicios de sesión e os contrasinais para estes sitios.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s non gardará os contrasinais destes sitios.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Eliminar todas as excepcións</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Buscar inicios de sesións</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Buscar contrasinais</string>
<!-- The header for the site that a login is for -->
@@ -1836,17 +1842,11 @@
<string name="saved_login_reveal_password">Mostrar contrasinal</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Agochar contrasinal</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquee para ver os seus inicios de sesión gardados</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Desbloquear para ver os seus contrasinais gardados</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Protexa os seus inicios de sesión e contrasinais</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Protexa os seus contrasinais gardados</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configure un padrón de bloqueo de dispositivo, PIN ou contrasinal para protexer os accesos e contrasinais gardados de que non sexan accedidos se outra persoa ten o seu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Configure un padrón de bloqueo do dispositivo, un PIN ou un contrasinal para protexer o acceso aos seus contrasinais gardados se outra persoa ten o seu dispositivo.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Máis tarde</string>
@@ -1862,8 +1862,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nome (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Usado por última vez</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ordenar o menú de inicio de sesión</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menú de ordenar contrasinais</string>
@@ -1873,16 +1871,10 @@
<string name="preferences_autofill">Completado automático</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Enderezos</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tarxetas de crédito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Métodos de pagamento</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gardar e completar automaticamente as tarxetas</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Gardar e cubrir os métodos de pago</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Os datos están cifrados</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s cifra todos os métodos de pago que garda</string>
@@ -1890,12 +1882,8 @@
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizar as tarxetas entre dispositivos</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizar as tarxetas</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Engadir unha tarxeta de crédito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Engadir a tarxeta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Xestionar as tarxetas gardadas</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Xestionar tarxetas</string>
@@ -1904,12 +1892,8 @@
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Xestionar enderezos</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Gardar e encher automaticamente enderezos</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Gardar e completar os enderezos</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Inclúe información como números, correo electrónico e enderezos de envío</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Inclúe números de teléfono e enderezos de correo electrónico</string>
@@ -1933,8 +1917,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Eliminar a tarxeta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Seguro de que quere eliminar esta tarxeta de crédito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Eliminar a tarxeta?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Eliminar</string>
@@ -1946,23 +1928,15 @@
<string name="credit_cards_cancel_button">Cancelar</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Tarxetas gardadas</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Introduza un número de tarxeta válido</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Introduza un número de tarxeta válido</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Cubra este campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Engadir un nome</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Desbloquee para ver as súas tarxetas gardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Asegure as súas tarxetas de crédito</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Protexa os seus métodos de pago gardados</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configure un padrón de bloqueo de dispositivo, PIN ou contrasinal para evitar que outra persoa co seu dispositivo poida acceder a elas.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Configure un padrón de bloqueo do dispositivo, un PIN ou un contrasinal para protexer o acceso aos seus métodos de pago gardados se outra persoa ten o seu dispositivo.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurar agora</string>
@@ -1970,8 +1944,6 @@
<string name="credit_cards_warning_dialog_later">Máis tarde</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Desbloquear o dispositivo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquee para empregar a información almacenada de tarxetas de crédito</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Desbloquee para usar os métodos de pago gardados</string>
<!-- Title of the "Add address" screen -->
@@ -1980,12 +1952,6 @@
<string name="addresses_edit_address">Editar enderezo</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Xestionar enderezos</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Nome</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Segundo nome</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Apelidos</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nome</string>
<!-- The header for the street address of an address -->
@@ -2011,8 +1977,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Eliminar enderezo</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Seguro de que quere eliminar este enderezo?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Eliminar este enderezo?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Eliminar</string>
@@ -2112,49 +2076,29 @@
<string name="login_menu_delete_button">Eliminar</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Editar</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Confirma que desexa eliminar este inicio de sesión?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Seguro que quere eliminar este contrasinal?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Eliminar</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancelar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opcións de inicio de sesión</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opcións de contrasinal</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editábel para o enderezo web do inicio de sesión.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">O campo de texto editable para o enderezo do sitio web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editábel para o nome de usuario do inicio de sesión.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">O campo de texto editable para o nome de usuario.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editábel para o contrasinal do inicio de sesión.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">O campo de texto editable para o contrasinal.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Gardar os cambios para iniciar sesión.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Gardar cambios.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Editar</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Editar contrasinal</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Engadir novas credenciais</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Engadir contrasinal</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Contrasinal obrigatorio</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Introduza un contrasinal</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Requírese un nome de usuario</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Introduza un nome de usuario</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Requírese un nome de servidor</string>
@@ -2556,6 +2500,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Pechar a folla de traducións</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Algunhas opcións de configuración non están dispoñibles temporalmente.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traducións</string>
@@ -2579,6 +2526,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Seleccionar un idioma para xestionar as preferencias de «traducir sempre» e «nunca traducir».</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Non se puideron cargar os idiomas. Volve a comprobar máis tarde.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Ofrecer traducción (predeterminado)</string>
@@ -2602,6 +2552,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Retirar %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Non se puideron cargar os sitios. Volve a comprobar máis tarde.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Eliminar %1$s?</string>
@@ -2679,13 +2631,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Retroceder no historial</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Abre o caixón de depuración</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Ferramentas de lapelas</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Número de lapelas</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Activo</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Activo</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Activo</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactivo</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2696,6 +2653,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Ferramenta de creación de lapelas</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Cantidade de lapelas a crear</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">O campo de texto está baleiro</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Introduce só números enteiros positivos</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Introduce un número maior que cero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Superouse o número máximo de pestanas (%1$s) que se poden xerar nunha soa operación</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Engadir ás lapelas activas</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2712,11 +2679,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Política de privacidade</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Enviar</string>
+ <string name="micro_survey_submit_button_label">Enviar</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Pechar</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Pechar</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Grazas pola súa opinión</string>
+ <string name="micro_survey_feedback_confirmation">Grazas pola súa opinión</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Moi satisfeito</string>
<!-- Option for likert scale -->
@@ -2728,6 +2695,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Moi insatisfeito</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Enquisa aberta</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Pecha enquisa</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Pechar</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Identificacións</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-gn/strings.xml b/mobile/android/fenix/app/src/main/res/values-gn/strings.xml
index a83bce8a53..ae524cde42 100644
--- a/mobile/android/fenix/app/src/main/res/values-gn/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-gn/strings.xml
@@ -203,6 +203,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Moĩmbaha</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Jepysokue</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Eñangareko jepysokuére</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Ejuhuvéta jepysokue</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Mba’ete marandu</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -222,6 +226,8 @@
<string name="browser_menu_open_in_regular_tab">Embojuruja tendayke</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Embojuaju mba’erechaha ñepyrũgua</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Embojuaju mba’erechaha ñepyrũgua…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Mohenda</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -233,9 +239,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Emoñe’ẽasa kuatiarogue</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Eñongatu mbyatyhápe…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Eñongatu mbyatyhápe</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Moherakuã</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Moherakuã…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Embojuruja %1$s-pe</string>
@@ -289,6 +299,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Ñongatu</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Emongurusu ko kuatiarogue</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Embosako’i techaukaha</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Eñongatu PDF ramo…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Emyandy moñe’ẽha jehecha</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Embogue moñe’ẽha jehecha</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Emoñe’ẽasa kuatiarogue…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s-pe oñemoñe’ẽasapyre</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Mbokuatia…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Ndaipóri jepysokue ápe</string>
@@ -385,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox marandu’i ñemigua</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Eikuaave ore marandu’i ñemigua rupive</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Rovy’ã eimére tekorosãme</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -598,7 +624,9 @@
<!-- Preference for language -->
<string name="preferences_language">Ñe’ẽ</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Ñemoñe’ẽasa</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Ñemoñe’ẽasa</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Ñemoñe’ẽasa</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Mba’ekuaarã jeporavo</string>
<!-- Preference for data collection -->
@@ -672,10 +700,6 @@
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Jeporavorã</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Emoñe’ẽ ha emoambue ñanduti renda mba’ekuaarã</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Emboguete ñanduti renda</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Emoneĩ opaite tendápe g̃uarã</string>
@@ -807,8 +831,6 @@
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Techaukaha</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Tembiapo ñepyrũ</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Ñe’ẽñemi</string>
<!-- Preference for syncing tabs -->
@@ -835,8 +857,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s %2$s %3$s-pe</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kuatia’atã ñemurã</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Mba’éicha ehepyme’ẽta</string>
<!-- Preference for syncing addresses -->
@@ -852,6 +872,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tendayke %s mba’e</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s tendayke mbotypyre: %2$d-pe</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ehecha tendayke oñembotyramóva</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Oĩ’ỹva</string>
@@ -1804,12 +1832,8 @@
<string name="add_to_homescreen_description_2">Ikatu embojuaju ko ñanduti renda ne mba’e’oka mba’erechaha ñepyrũgua rehe eike hag̃ua ha eikundaha pya’eve, peteĩ tembiporu’ícharamo.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Tembiapo ñepyrũ ha ñe’ẽñemi</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Ñe’ẽñemi</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Eñongatu tembiapo ñepyrũ ha ñe’ẽñemi</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Eñongatu ñe’ẽñemi</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Ejerure ñemoneĩ eñongatu hag̃ua</string>
@@ -1826,46 +1850,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Emoĩmba ha eñongatu poruhára réra ha ñe’ẽñemi ambue tembiporu’ípe ne mba’e’oka pegua.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Embojuaju jeike</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Embojuaju ñe’ẽñemi</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Embojuehe tembiapo ñepyrũ</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Embojuehe ñe’ẽñemi</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Embojuehe tembiapo ñepyrũ mba’e’oka pa’ũme</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Embojuehe ñe’ẽñemi mba’e’oka pa’ũme</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Tembiapo ñepyrũ ñongatupyre</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Ñe’ẽñemi ñongatupyre</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Ko’ápe ojehecháta tembiapo ñepyrũ eñongatu térã embojuehéva %s ndive.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Umi ñe’ẽñemi eñongatu térã embojuehéva %s ndive ojehecháta ko’ápe. Opaite ñe’ẽñemi eñongatúva ipapapýta.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Eikuaave Sync rehegua</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Eikuaave ñembojuehe rehegua</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Oĩ’ỹva</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Ápe ojehecháta tembiapo ñepyrũ ha ñe’ẽñemi oñeñongatu’ỹva.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s noñongatúi ñe’ẽñemi tendakuéra hysýiva ko’ápe g̃uarãme.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Noñeñongatumo’ãi tembiapo ñepyrũ ha ñe’ẽñemi ko’ã tendápe g̃uarã.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s noñongatúi ñe’ẽñemi ko’ã tendápe g̃uarã.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Emboguete opaite oĩ’ỹva</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Eheka tembiapo ñepyrũ</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Eheka ñe’ẽñemi</string>
<!-- The header for the site that a login is for -->
@@ -1894,17 +1899,11 @@
<string name="saved_login_reveal_password">Ehechauka ñe’ẽñemi</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Emokañy ñe’ẽñemi</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Emyandyjey ehecha hag̃ua ne rembiapo ñepyrũ ñongatupyre</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Embojuruja ehecha hag̃ua ñe’ẽñemi ñongatupyre</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Erekokuaa nde poruhára ha ñe’ẽñemi</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Emo’ã ne ñe’ẽñemi ñongatupyre</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Emboheko pe patrõ jokoháva mba’e’oka pegua, PIN térã ñe’ẽñemi emo’ã hag̃ua nde poruhára ha ñe’ẽñemi ñongatupyrépe jeike ambue orekórõ ne mba’e’oka.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Emboheko mba’e’oka jekokoha rape, PIN térã ñe’ẽñemi emo’ã hag̃ua ñe’ẽñemi ñongatupyre ha emboyke ani hag̃ua oike ambuéva orekórõ ne mba’e’oka.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Upéi</string>
@@ -1923,8 +1922,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Téra (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Jejuru paha</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Emoĩporã poravorã tembiapo ñepyrũgua</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Emoĩporã ñe’ẽñemi poravorã</string>
@@ -1934,43 +1931,29 @@
<string name="preferences_autofill">Myanyhẽ jehegui</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Kundaharape</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kuatia’atã ñemurã</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Mba’éicha ehepyme’ẽta</string>
- <!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Eñongatu ha emyanyhẽ kuatia’atã</string>
<!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Eñongatu ha emyanyhẽ mba’éicha ehepyme’ẽta</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Mba’ekuaarã ipapapypa</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s ombopapapypa ne ñehepyme’ẽrã ñongatupyre</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Embojuehe kuatia’atã mba’e’oka pa’ũme</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Embojuehe kuatia’atã</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Embojuaju kuatia’atã ñemurã</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Embojuaju kuatia’atã</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Eñangareko kuatia’atã ñongatupyrére</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Eñangareko kuatia’atã</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Embojuaju kundaharape</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Kundaharape ñangareko</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Eñongatu ha emyanyhẽ kundaharape</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Eñongatu ha emyanyhẽ kundaharape</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Emoĩ marandu ipapapy, ñanduti veve ha kundaharape ñemondorãva</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Oike pumbyry papapy ha ñanduti veve kundaharape</string>
@@ -1994,8 +1977,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Emboguete kuatia’atã</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Emboguesépa añetehápe ko kuatia’atã ñemurã?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">¿Emboguete kuatia’atã?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Mboguete</string>
@@ -2009,24 +1990,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Kuatia’atã ñongatupyre</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ikatúpiko ehai kuatia’atã ñemurã papapy oikóva</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Emoinge kuatia’atã papapy oikóva</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ikatúpiko emyanyhẽ ko kora</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Embojuaju téra</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Embojuruja ehecha hag̃ua kuatia’atã ñongatupyre</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Emohekorosã nde kuatia’atã ñemurã</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Emo’ã ne ñehepyme’ẽrã ñongatupyre</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Emboheko peteĩ jekokoha rape, PIN térã ñe’ẽñemi emo’ã hag̃ua nde kuatia’atã ñongatupyre ambue oikeséramo ne mba’e’okápe.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Emboheko mba’e’oka jekokoha rape, PIN térã ñe’ẽñemi emo’ã hag̃ua ñehepyme’ẽrã ñongatupyre ha emboyke ani hag̃ua oike ambuéva orekórõ ne mba’e’oka.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Emboheko ko’ág̃a</string>
@@ -2035,9 +2007,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Embojuruja ne mba’e’oka</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Embojuruja eiporu hag̃ua kuatia’atã ñemurã marandu mbyatypyre</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Embojuruja eiporu hag̃ua ne ñehepyme’ẽrã ñongatupyre</string>
<!-- Title of the "Add address" screen -->
@@ -2046,12 +2015,6 @@
<string name="addresses_edit_address">Embosako’i kundaharape</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Kundaharape ñangareko</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Téra Peteĩha</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Téra Mokõiha</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Terajoapy</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Téra</string>
<!-- The header for the street address of an address -->
@@ -2078,8 +2041,6 @@
<string name="addressess_delete_address_button">Embogue kundaharape</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Añetehápepa remboguese ko kundaharape?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">¿Embogue kundaharape?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Mboguete</string>
@@ -2179,49 +2140,29 @@
<string name="login_menu_delete_button">Mboguete</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Mbosako’i</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">¿Emboguese añetehápe ko tembiapo ñepyrũ?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Emboguesetépa añetehápe ko ñe’ẽñemi</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Mboguete</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Heja</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Jeporavorã tembiapo ñepyrũgua</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Ñe’ẽñemi jeporavorã</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Moñe’ẽha kora isako’ikuaáva ñanduti kundaharape rembiapo ñepyrũme.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Moñe’ẽrã kora ehaikuaáva kundaharape ñanduti rendápe g̃uarã.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Moñe’ẽha kora isako’ikuaáva poruhára réra rembiapo ñepyrũme.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Moñe’ẽrã kora ehaikuaáva poruhára rérape g̃uarã.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Moñe’ẽha kora isako’ikuaáva ñe’ẽñemi rembiapo ñepyrũme.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Moñe’ẽrã kora ehaikuaáva ñe’ẽñemíme g̃uarã.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Eñongatu moambue tembiapo ñepyrũme.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Moambue ñongatu.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Mbosako’i</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Embosako’i ñe’ẽñemi</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Embojuaju terarenda pyahu</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Embojuaju ñe’ẽñemi</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Tekotevẽ ñe’ẽñemi</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Emoinge ñe’ẽñemi</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Poruhára réra jerurepyre</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Ehai poruhára réra</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Mohendahavusu réra jerurepyre</string>
@@ -2573,6 +2514,8 @@
<string name="translations_bottom_sheet_negative_button">Ani ko’ág̃a</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Ehechauka ypykuéva</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Oñemyanyhẽ kuatiarogue oñemoñe’ẽasa’ỹre</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Oĩma</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2632,6 +2575,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Emboty ñe’ẽasaha rogue</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Ñemoĩporãha ndojeporukuaáiva ko’ag̃aite.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Ñemoñe’ẽasa</string>
@@ -2657,6 +2603,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Eiporavo ñe’ẽ eñangareko hag̃ua umi erohoryvéva “emoñe’ẽasameme” y “ani emoñe’ẽasa”.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Noñemyanyhẽkuaái ñe’ẽnguéra. Eha’ãjey ag̃amieve.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Eikuave’ẽ ñe’ẽasa (ypyguáva)</string>
@@ -2680,6 +2629,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Emboguete %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Noñemyanyhẽkuaái tendakuéra. Eha’ãjey ag̃ave.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">¿Emboguete %1$s?</string>
@@ -2757,13 +2708,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Eikundaha tapykuévo</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Embojuruja kahõ mopotĩha</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Tendayke rembiporu</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Tendayke papapy</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Myandy</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Myandy</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Myandy</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Jokopyre</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2774,6 +2730,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Tembiporu tendayke moheñoiha</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Mboýpa emoheñóita tendayke</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Moñe’ẽrã kora inandi</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Emoinge papapy entero positivo año</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Emoinge pateĩ papapy sérogui tuichavéva</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Ohasáma pe tendayke oñekotevẽva (%1$s) ikatúva oñemongu’e peteĩjeýpe</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Embojuaju tendayke oikóva</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2790,11 +2756,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Marandu’i ñemiguáva</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Mondo</string>
+ <string name="micro_survey_submit_button_label">Mondo</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Mboty</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Mboty</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">¡Aguyje nde jehaipyrére!</string>
+ <string name="micro_survey_feedback_confirmation">¡Aguyje nde jehaipyrére!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Avy’aiterei</string>
<!-- Option for likert scale -->
@@ -2807,6 +2773,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Nachembovy’ái</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Embojuruja ñeporandu</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Emboty ñeporandu</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Mboty</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Tembiapo moñepyrũ</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-hr/strings.xml b/mobile/android/fenix/app/src/main/res/values-hr/strings.xml
index d1834444f2..a89e528b94 100644
--- a/mobile/android/fenix/app/src/main/res/values-hr/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-hr/strings.xml
@@ -2,7 +2,7 @@
<resources xmlns:tools="http://schemas.android.com/tools" xmlns:moz="http://mozac.org/tools">
<!-- App name for private browsing mode. The first parameter is the name of the app defined in app_name (for example: Fenix)-->
- <string name="app_name_private_5">Privatni %s</string>
+ <string name="app_name_private_5">Privatne %s</string>
<!-- App name for private browsing mode. The first parameter is the name of the app defined in app_name (for example: Fenix)-->
<string name="app_name_private_4">%s (privatno)</string>
@@ -49,12 +49,12 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Nedavno spremljeno</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Nedavno spremljeno</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Prikaži sve spremljene zabilješke</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Prikaži sve spremljene zabilješke</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Ukloni</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Ukloni</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s proizvodi Mozilla.</string>
@@ -144,8 +144,8 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">Nova privatna kartica</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">Prečac za lozinke</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">Prečac za lozinke</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -187,11 +187,11 @@
<!-- Content description (not visible, for screen readers etc.): Stop loading current website -->
<string name="browser_menu_stop">Zaustavi</string>
<!-- Browser menu button that opens the addon manager -->
- <string name="browser_menu_add_ons">Dodaci</string>
+ <string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Dodaci</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informacije računa</string>
<!-- Text displayed when there are no add-ons to be shown -->
- <string name="no_add_ons">Ovdje nema dodataka</string>
+ <string name="no_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Ovdje nema dodataka</string>
<!-- Browser menu button that sends a user to help articles -->
<string name="browser_menu_help">Pomoć</string>
<!-- Browser menu button that sends a to a the what's new article -->
@@ -207,7 +207,7 @@
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Dodaj na početni ekran</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
- <string name="browser_menu_install_on_homescreen">Instaliraj</string>
+ <string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instaliraj</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Ponovna sinkronizacija</string>
<!-- Browser menu button that opens the find in page menu -->
@@ -313,22 +313,22 @@
<!-- Notification pre-permission dialog -->
<!-- Enable notification pre permission dialog title
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
- <string name="onboarding_home_enable_notifications_title">Obavijesti vam pomažu da učinite više s %s</string>
+ <string name="onboarding_home_enable_notifications_title" moz:removedIn="124" tools:ignore="UnusedResources">Obavijesti vam pomažu da učinite više s %s</string>
<!-- Enable notification pre permission dialog description with rationale
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
- <string name="onboarding_home_enable_notifications_description">Sinkronizirajte svoje kartice između uređaja, upravljajte preuzimanjima, dobivajte savjete o tome kako najbolje iskoristiti %s zaštitu privatnosti i još mnogo toga.</string>
+ <string name="onboarding_home_enable_notifications_description" moz:removedIn="124" tools:ignore="UnusedResources">Sinkronizirajte svoje kartice između uređaja, upravljajte preuzimanjima, dobivajte savjete o tome kako najbolje iskoristiti %s zaštitu privatnosti i još mnogo toga.</string>
<!-- Text for the button to request notification permission on the device -->
- <string name="onboarding_home_enable_notifications_positive_button">Nastavi</string>
+ <string name="onboarding_home_enable_notifications_positive_button" moz:removedIn="124" tools:ignore="UnusedResources">Nastavi</string>
<!-- Text for the button to not request notification permission on the device and dismiss the dialog -->
- <string name="onboarding_home_enable_notifications_negative_button">Ne sada</string>
+ <string name="onboarding_home_enable_notifications_negative_button" moz:removedIn="124" tools:ignore="UnusedResources">Ne sada</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Volimo vas čuvati</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
- <string name="juno_onboarding_default_browser_description_nimbus_2">Naš neprofitni preglednik pomaže spriječiti tvrtke da vas tajno prate na webu.\n\nSaznajte više u našoj obavijesti o privatnosti.</string>
+ <string name="juno_onboarding_default_browser_description_nimbus_2" moz:RemovedIn="124" tools:ignore="UnusedResources">Naš neprofitni preglednik pomaže spriječiti tvrtke da vas tajno prate na webu.\n\nSaznajte više u našoj obavijesti o privatnosti.</string>
<!-- Text for the link to the privacy notice webpage for set as firefox default browser screen.
This is part of the string with the key "juno_onboarding_default_browser_description". -->
- <string name="juno_onboarding_default_browser_description_link_text" tools:ignore="UnusedResources">politika privatnosti</string>
+ <string name="juno_onboarding_default_browser_description_link_text" moz:RemovedIn="124" tools:ignore="UnusedResources">politika privatnosti</string>
<!-- Text for the button to set firefox as default browser on the device -->
<string name="juno_onboarding_default_browser_positive_button" tools:ignore="UnusedResources">Postavi kao zadani preglednik</string>
<!-- Text for the button dismiss the screen and move on with the flow -->
@@ -511,7 +511,7 @@
<string name="quit_application">Zatvaranje aplikacije radi primjene promjena…</string>
<!-- Preference for add_ons -->
- <string name="preferences_addons">Dodaci</string>
+ <string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">Dodaci</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Obavijesti</string>
@@ -523,7 +523,7 @@
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
- <string name="preferences_customize_amo_collection">Prilagođena kolekcija dodataka</string>
+ <string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Prilagođena kolekcija dodataka</string>
<!-- Button caption to confirm the add-on collection configuration -->
<string name="customize_addon_collection_ok">U redu</string>
<!-- Button caption to abort the add-on collection configuration -->
@@ -533,13 +533,13 @@
<!-- Hint displayed on input field for custom collection user ID-->
<string name="customize_addon_collection_user_hint">Vlasnik kolekcije (ID korisnika)</string>
<!-- Toast shown after confirming the custom add-on collection configuration -->
- <string name="toast_customize_addon_collection_done">Izmijenjena je kolekcija dodataka. Napuštanje aplikacije za primjenu izmjena…</string>
+ <string name="toast_customize_addon_collection_done" moz:removedIn="126" tools:ignore="UnusedResources">Izmijenjena je kolekcija dodataka. Napuštanje aplikacije za primjenu izmjena…</string>
<!-- Customize Home -->
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Vrati se natrag</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Nedavne zabilješke</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Nedavne zabilješke</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Nedavno posjećeno</string>
@@ -587,15 +587,15 @@
<!-- Wallpaper onboarding dialog learn more button text. The button navigates to the wallpaper settings screen. -->
<string name="wallpapers_onboarding_dialog_explore_more_button_text">Istražite više pozadina</string>
- <!-- Add-on process crash dialog to user -->
+ <!-- Extension process crash dialog to user -->
<!-- Title of a dialog shown to the user when enough errors have occurred with addons and they need to be temporarily disabled -->
- <string name="addon_process_crash_dialog_title" tools:ignore="UnusedResources">Dodaci su privremeno onemogućeni</string>
+ <string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">Dodaci su privremeno onemogućeni</string>
<!-- The first parameter is the application name. This is a message shown to the user when too many errors have occurred with the addons process and they have been disabled. The user can decide if they would like to continue trying to start add-ons or if they'd rather continue without them. -->
- <string name="addon_process_crash_dialog_message" tools:ignore="UnusedResources">Jedan ili više dodataka prestalo je raditi, što je vaš sustav učinilo nestabilnim. %1$s je bezuspješno pokušao ponovno pokrenuti dodatke.\n\nDodaci se neće ponovno pokrenuti tijekom vaše trenutačne sesije.\n\nUklanjanje ili onemogućavanje dodataka može riješiti ovaj problem.</string>
+ <string name="addon_process_crash_dialog_message" moz:removedIn="126" tools:ignore="UnusedResources">Jedan ili više dodataka prestalo je raditi, što je vaš sustav učinilo nestabilnim. %1$s je bezuspješno pokušao ponovno pokrenuti dodatke.\n\nDodaci se neće ponovno pokrenuti tijekom vaše trenutačne sesije.\n\nUklanjanje ili onemogućavanje dodataka može riješiti ovaj problem.</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
- <string name="addon_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Pokušajte ponovno pokrenuti dodatke</string>
+ <string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Pokušajte ponovno pokrenuti dodatke</string>
<!-- The user will continue with all add-ons disabled -->
- <string name="addon_process_crash_dialog_disable_addons_button_text" tools:ignore="UnusedResources">Nastavite s onemogućenim dodacima</string>
+ <string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Nastavite s onemogućenim dodacima</string>
<!-- Account Preferences -->
<!-- Preference for managing your account via accounts.firefox.com -->
@@ -608,8 +608,6 @@
<string name="preferences_sync_history">Povijest</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Zabilješke</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins">Prijave</string>
<!-- Preference for syncing tabs -->
<string name="preferences_sync_tabs_2">Otvorene kartice</string>
<!-- Preference for signing out -->
@@ -635,8 +633,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s na %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards">Kreditne kartice</string>
<!-- Preference for syncing addresses -->
<string name="preferences_sync_address">Adrese</string>
@@ -1571,10 +1567,6 @@
<!-- Describes the add to homescreen functionality -->
<string name="add_to_homescreen_description_2">Ovu stranicu lako možeš dodati na početni zaslon svog uređaja za brže pretraživanje s iskustvom sličnim aplikacijama.</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords">Prijave i lozinke</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins">Spremi prijave i lozinke</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Pitaj treba li se spremiti</string>
<!-- Preference option for never saving passwords in Fenix -->
@@ -1588,30 +1580,11 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Ispuni korisnička imena i lozinke u drugim aplikacijama na tvom uređaju.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login">Dodaj prijavu</string>
-
- <!-- Preference for syncing saved logins in Fenix -->
- <string name="preferences_passwords_sync_logins">Sinkroniziraj prijave</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices">Sinkroniziraj prijave na svim uređajima</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins">Spremljene prijave</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text">Ovdje će se prikazati prijave koje spremaš ili sinkroniziraš s programom %s.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link">Saznaj više o sinkronizaciji.</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Iznimke</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty">Ovdje će se prikazati prijave i lozinke koje nisu spremljene.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description">Prijave i lozinke neće se spremiti za te web-stanice.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Obriši sve iznimke</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search">Traži prijave</string>
<!-- The header for the site that a login is for -->
<string name="preferences_passwords_saved_logins_site">Stranica</string>
<!-- The header for the username for a login -->
@@ -1638,13 +1611,7 @@
<string name="saved_login_reveal_password">Prikaži lozinku</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Sakrij lozinku</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message">Otključaj za pregled tvojih spremljenih prijava</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title">Osiguraj svoje prijave i lozinke</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message">Postavi način za zaključavanje uređaja, PIN-a ili lozinke, kako bi se spriječio pristup spremljenim prijavama i lozinkama, kad netko drugi radi s tvojim uređajem.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Kasnije</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
@@ -1661,40 +1628,22 @@
<string name="saved_logins_sort_strategy_alphabetically">Naziv (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Zadnja upotreba</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description">Izbornik sortiranja prijava</string>
<!-- Autofill -->
<!-- Preference and title for managing the autofill settings -->
<string name="preferences_autofill">Automatsko ispunjavanje</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adrese</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards">Kreditne kartice</string>
- <!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards">Spremi i automatski ispuni polja kartice</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary">Podaci su šifrirani</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sinkroniziraj kartice na uređajima</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sinkroniziraj kartice</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card">Dodaj kreditnu karticu</string>
-
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards">Upravljaj spremljenim karticama</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Dodaj adresu</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Upravljaj adresama</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses">Spremi i automatski ispuni adrese</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary">Uključi podatke kao što su brojevi, e-pošta i adresa dostave</string>
-
<!-- Title of the "Add card" screen -->
<string name="credit_cards_add_card">Dodaj karticu</string>
<!-- Title of the "Edit card" screen -->
@@ -1713,8 +1662,6 @@
<string name="credit_cards_menu_delete_card">Izbriši karticu</string>
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Izbriši karticu</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation">Jeste li sigurni da želite obrisati ovu karticu?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Izbriši</string>
<!-- The title for the "Save" menu item for saving a credit card -->
@@ -1727,17 +1674,8 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Spremljene kartice</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message">Unesi važeći broj kreditne kartice</string>
-
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message">Molimo ispuni ovo polje</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Otključaj za prikaz spremljenih kreditnih kartica</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title">Osiguraj svoje kreditne kartice</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message">Postavi uzorak za otključavanje uređaja, PIN ili lozinku da bi tvoje spremljene kreditne kartice bile zaštićene od neovlaštenog pristupa drugih osoba.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Postavi sada</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
@@ -1745,21 +1683,12 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Otključaj svoj uređaj</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message">Otključ za korištenje spremljenih podataka o kreditnim karticama</string>
-
<!-- Title of the "Add address" screen -->
<string name="addresses_add_address">Dodaj adresu</string>
<!-- Title of the "Edit address" screen -->
<string name="addresses_edit_address">Uredi adresu</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Upravljaj adresama</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name">Ime</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name">Srednje ime</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name">Prezime</string>
<!-- The header for the street address of an address -->
<string name="addresses_street_address">Ulica</string>
<!-- The header for the city of an address -->
@@ -1783,8 +1712,6 @@
<string name="addresses_cancel_button">Odustani</string>
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Izbriši adresu</string>
- <!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message">Stvano želiš izbrisati ovu adresu?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Izbriši</string>
<!-- The text for the negative button on "Delete address" dialog -->
@@ -1883,30 +1810,10 @@
<string name="login_menu_delete_button">Izbriši</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Uredi</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation">Sigurno izbrisati ovu prijavu?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Izbriši</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Odustani</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu">Opcije prijave</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description">Tekstualno polje za web adresu prijave koje se može uređivati.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description">Tekstualno polje za korisničko ime koje se može uređivati.</string>
- <!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description">Tekstualno polje za lozinku koje se može uređivati.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login">Spremi izmjene prijave.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit">Uređivanje</string>
- <!-- The page title for adding new login. -->
- <string name="add_login">Dodaj novu prijavu</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required">Potrebna je lozinka</string>
- <!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required">Korisničko ime je potrebno</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Domena je potrebna</string>
<!-- Voice search button content description -->
@@ -2004,7 +1911,7 @@
<!-- Title for search suggestions when the default search suggestion engine is anything other than Google. The first parameter is default search engine name. -->
<string name="other_default_search_engine_suggestion_header">%s pretraga</string>
- <!-- Default browser experiment -->
+ <!-- Default browser card text -->
<string name="default_browser_experiment_card_text">Postavi automatsko otvaranje poveznica web stranica, e-pošte i poruka u Firefoxu.</string>
<!-- Content description for close button in collection placeholder. -->
@@ -2014,7 +1921,7 @@
<string name="radio_preference_info_content_description">Klikni za više informacija</string>
<!-- Content description for the action bar "up" button -->
- <string name="action_bar_up_description">Navigiraj gore</string>
+ <string name="action_bar_up_description" moz:removedIn="124" tools:ignore="UnusedResources">Navigiraj gore</string>
<!-- Content description for privacy content close button -->
<string name="privacy_content_close_button_content_description">Zatvori</string>
@@ -2056,4 +1963,6 @@
<!-- Translations feature-->
+ <!-- Micro survey -->
+
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-hsb/strings.xml b/mobile/android/fenix/app/src/main/res/values-hsb/strings.xml
index b366c59fcd..561485718b 100644
--- a/mobile/android/fenix/app/src/main/res/values-hsb/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-hsb/strings.xml
@@ -200,6 +200,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Přidatki</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Rozšěrjenja</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Rozšěrjenja rjadować</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Dalše rozšěrjenja namakać</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Kontowe informacije</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -218,6 +222,8 @@
<string name="browser_menu_open_in_regular_tab">W normalnym rajtarku wočinić</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Startowej wobrazowce přidać</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Startowej wobrazowce přidać…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalować</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -229,9 +235,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Stronu přełožić</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Do zběrki składować…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Do zběrki składować</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Dźělić</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Dźělić…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">W %1$s wočinić</string>
@@ -284,6 +294,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Składować</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Tutu stronu jako zapołožku składować</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Zapołožku wobdźěłać</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Jako PDF składować…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Čitanski napohlad zmóžnić</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Čitanski napohlad znjemóžnić</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Stronu přełožić…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Přełoženy do rěče %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Ćišćeć…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Žane rozšěrjenja tu</string>
@@ -379,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Zdźělenka priwatnosće Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Zhońće wjace w našej zdźělence priwatnosće</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Škitamy was rady</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -588,7 +614,9 @@
<!-- Preference for language -->
<string name="preferences_language">Rěč</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Přełožk</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Přełožk</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Přełožki</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Datowe wuběry</string>
<!-- Preference for data collection -->
@@ -661,10 +689,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Trěbny</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Na přeće</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Websydłowe daty čitać a změnić</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Websydło zhašeć</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Za wšě sydła dowolić</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -791,8 +815,6 @@
<string name="preferences_sync_history">Historija</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Zapołožki</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Hesła</string>
<!-- Preference for syncing tabs -->
@@ -820,8 +842,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s wot %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditne karty</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Płaćenske metody</string>
<!-- Preference for syncing addresses -->
@@ -837,6 +857,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Rajtark z %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Rajtarki %1$s začinjene: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Runje začinjene rajtarki pokazać</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Wuwzaća</string>
@@ -1769,12 +1797,8 @@
<string name="add_to_homescreen_description_2">Móžeće startowej wobrazowce swojeho grata tute websydło lochko přidać, zo byšće direktny přistup měł a spěšnišo z dožiwjenjom nałoženja přehladował.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja a hesła</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Hesła</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja a hesła składować</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Hesła składować</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Před składowanjom so prašeć</string>
@@ -1790,46 +1814,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Wužiwarske mjena a hesła w druhich nałoženjach na wašim graće zasadźić.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenje přidać</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Hesło přidać</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja synchronizować</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Hesła synchronizować</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja mjez gratami synchronizować</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Hesła přez graty synchronizować</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Składowane přizjewjenja</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Składowane hesła</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja, kotrež składujeće abo z %s synchronizujeće, so tu pokazaja.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Hesła, kotrež składujeće abo z %s synchronizujeće, so tu nalistuja. Wšě hesła, kotrež składujeće, so zaklučuja.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Zhońće wjace wo Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Zhońće wjace wo sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Wuwzaća</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja a hesła, kotrež so njeskładuja, so tu pokazaja.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s hesła za sydła njeskładuje, kotrež su tu nalistowane.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja a hesła so za tute sydła njeskładuja.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s hesła za tute sydła njeskładuje.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Wšě wuwzaća zhašeć</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenja pytać</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Hesła přepytać</string>
<!-- The header for the site that a login is for -->
@@ -1858,17 +1863,11 @@
<string name="saved_login_reveal_password">Hesło pokazać</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Hesło schować</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Za zwobraznjenje wašich składowanych přizjewjenjow wotewrěć</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Za zwobraznjenje wašich składowanych hesłow wotewrěć</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Zawěsćće swoje přizjewjenja a hesła</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Zawěsćće swoje składowane hesła</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastajće gratowy zawrjenski muster, PIN abo hesło, zo byšće přistupej k swojim składowanym přizjewjenjam a hesłam zadźěwał, jeli něchtó druhi waš grat ma.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Nastajće gratowy zawrjenski muster, PIN abo hesło, zo byšće přistupej k swojim składowanym hesłam zadźěwał, jeli něchtó druhi waš grat ma.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Pozdźišo</string>
@@ -1887,9 +1886,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Poslednim wužiću</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Meni přizjewjenskich datow sortěrować</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Meni „Hesła sortěrować“</string>
@@ -1898,41 +1894,27 @@
<string name="preferences_autofill">Awtomatisce wupjelnić</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresy</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditne karty</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Płaćenske metody</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Karty składować a awtomatisce wupjelnić</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Płaćenske metody składować a wupjelnić</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Daty su zaklučowane</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s wšě płaćenske metody zaklučuje, kotrež składujeće</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Karty přez graty synchronizować</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Karty synchronizować</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditnu kartu přidać</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Kartu přidać</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Składowane karty rjadować</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Karty rjadować</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Adresu přidać</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Adresy rjadować</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Adresy składować a awtomatisce wupjelnić</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Adresy składować a wupjelnić</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Informacije kaž ličby, e-mejlowe a rozsyłanske adresy zapřijeć</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Wobsahuje telefonowe čisła a e-mejlowe adresy</string>
@@ -1956,8 +1938,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Kartu zhašeć</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Chceće woprawdźe tutu kreditnu kartu zhašeć?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Kartu zhašeć?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Zhašeć</string>
@@ -1971,24 +1951,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Składowane karty</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Prošu zapodajće płaćiwe čisło kreditneje karty</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Zapodajće płaćiwe kartowe čisło</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Prošu wupjelńće tute polo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Přidajće mjeno</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Za zwobraznjenje wašich składowanych kartow wotewrěć</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Waše kreditne karty zawěsćić</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Zawěsćće swoje składowane płaćenske metody</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastajće gratowy zawrjenski muster, PIN abo hesło, zo byšće přistupej k swojim składowanym kreditnym kartam zadźěwał, jeli něchtó druhi waš grat ma.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Nastajće gratowy zawrjenski muster, PIN abo hesło, zo byšće přistupej k swojim składowanym płácenskim metodam zadźěwał, jeli něchtó druhi waš grat ma.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Nětko konfigurować</string>
@@ -1997,9 +1968,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Wotewriće swój grat</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Blokowanje zběhnyć, zo bychu so składowane informacije kreditneje karty wužiwali</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Wotewrěć, zo byšće składowane płaćenske metody wužiwał</string>
<!-- Title of the "Add address" screen -->
@@ -2008,12 +1976,6 @@
<string name="addresses_edit_address">Adresu wobdźěłać</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Adresy rjadować</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Předmjeno</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Druhe předmjeno</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Swójbne mjeno</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Mjeno</string>
<!-- The header for the street address of an address -->
@@ -2040,8 +2002,6 @@
<string name="addressess_delete_address_button">Adresu zhašeć</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Chceće woprawdźe tutu adresu zhašeć?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Tutu adresu zhašeć?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Zhašeć</string>
@@ -2140,49 +2100,29 @@
<string name="login_menu_delete_button">Zhašeć</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Wobdźěłać</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Chceće woprawdźe tute přizjewjenje zhašeć?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Chceće woprawdźe tute hesło zhašeć?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Zhašeć</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Přetorhnyć</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Přizjewjenske nastajenja</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Hesłowe nastajenja</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Wobdźěłujomne tekstowe polo za webadresu přizjewjenja.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Wobdźěłujomne tekstowe polo za adresu websydła.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Wobdźěłujomne tekstowe polo za wužiwarske mjeno přizjewjenja.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Wobdźěłujomne tekstowe polo za wužiwarske mjeno.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Wobdźěłujomne tekstowe polo za hesło přizjewjenja.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Wobdźěłujomne tekstowe polo za hesło.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Změny přizjewjenja składować</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Změny składować.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Wobdźěłać</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Hesło wobdźěłać</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Nowe přizjewjenje přidać</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Hesło přidać</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesło trěbne</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Hesło zapodać</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Wužiwarske mjeno trěbne</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Wužiwarske mjeno zapodać</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Hostmjeno trěbne</string>
@@ -2590,6 +2530,9 @@ To budźe jenož pomhać, kwalitu pohódnoćenjow posudźić, nic kwalitu produk
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Stronu Přełožki začinić</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Někotre nastajenja na chwilu k dispoziciji njejsu.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Přełožki</string>
@@ -2613,6 +2556,9 @@ To budźe jenož pomhać, kwalitu pohódnoćenjow posudźić, nic kwalitu produk
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Wubjerće rěč, zo byšće nastajeni „přeco přełožić“ a „ženje njepřełožić“ rjadował.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Rěče njedachu so začitać. Prošu spytajće pozdźišo hišće raz.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Přełožk poskićić (standard)</string>
@@ -2636,6 +2582,8 @@ To budźe jenož pomhać, kwalitu pohódnoćenjow posudźić, nic kwalitu produk
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s wotstronić</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Sydła njedachu so začitać. Prošu spytajće pozdźišo hišće raz.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s zhašeć?</string>
@@ -2713,13 +2661,18 @@ To budźe jenož pomhać, kwalitu pohódnoćenjow posudźić, nic kwalitu produk
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Wróćo nawigěrować</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Debug drawer wočinić</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Rajtarkowe nastroje</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Ličba rajtarkow</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktiwny</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktiwny</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktiwny</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Njeaktiwny</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2730,6 +2683,16 @@ To budźe jenož pomhać, kwalitu pohódnoćenjow posudźić, nic kwalitu produk
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Nastroj za wutworjenje rajtarkow</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Ličba rajtarkow, kotrež so maja wutworić</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Tekstowe polo je prózdne</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Prošu zapodajće jenož pozitiwne cyłe ličby</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Prošu zapodajće ličbu, kotraž je wjetša hač nula</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Maksimalna ličba rajtarkow (%1$s), kotrež dadźa so w jednej operaciji generěrować, je překročena</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Aktiwnym rajtarkam přidać</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2746,11 +2709,11 @@ To budźe jenož pomhać, kwalitu pohódnoćenjow posudźić, nic kwalitu produk
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Zdźělenka priwatnosće</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Wotpósłać</string>
+ <string name="micro_survey_submit_button_label">Wotpósłać</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Začinić</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Začinić</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Dźakujemy so za waš komentar!</string>
+ <string name="micro_survey_feedback_confirmation">Dźakujemy so za waš komentar!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Jara spokojny</string>
<!-- Option for likert scale -->
@@ -2762,6 +2725,14 @@ To budźe jenož pomhać, kwalitu pohódnoćenjow posudźić, nic kwalitu produk
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Jara njespokojny</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Naprašowanje wočinić</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Naprašowanje začinić</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Začinić</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Přizjewjenja</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-hu/strings.xml b/mobile/android/fenix/app/src/main/res/values-hu/strings.xml
index 4131faf3bb..efffda262e 100644
--- a/mobile/android/fenix/app/src/main/res/values-hu/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-hu/strings.xml
@@ -48,12 +48,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Nemrég mentett</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Nemrég mentett</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Összes mentett könyvjelző megjelenítése</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Összes mentett könyvjelző megjelenítése</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Eltávolítás</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Eltávolítás</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Könyvjelzők</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Összes könyvjelző megjelenítése</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Eltávolítás</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">A %1$s a Mozilla terméke.</string>
@@ -191,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Kiegészítők</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Kiegészítők</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Kiegészítők kezelése</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">További kiegészítők felfedezése</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Fiókinformáció</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -209,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">Megnyitás szokásos lapon</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Kezdőképernyőhöz adás</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Hozzáadás a kezdőképernyőhöz…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Telepítés</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -220,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Oldal fordítása</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Mentés gyűjteménybe…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Gyűjteménybe mentés</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Megosztás</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Megosztás…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Megnyitás ezzel: %1$s</string>
@@ -277,6 +295,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Mentés</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Oldal könyvjelzőzése</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Könyvjelző szerkesztése</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Mentés PDF-ként…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Olvasó nézetet bekapcsolása</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Olvasó nézet kikapcsolása</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Oldal fordítása…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Lefordítva erre: %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Nyomtatás…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Itt nincsenek kiegészítők</string>
@@ -582,6 +618,10 @@
<string name="preferences_account_sync_error">Újracsatlakozás a szinkronizálás folytatásához</string>
<!-- Preference for language -->
<string name="preferences_language">Nyelv</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Fordítás</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Fordítások</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Adatküldések</string>
<!-- Preference for data collection -->
@@ -689,7 +729,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Ugrás vissza</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Friss könyvjelzők</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Friss könyvjelzők</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Könyvjelzők</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Nemrég felkeresett</string>
@@ -829,6 +871,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Lap innen: %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s lap bezárva: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Nemrég bezárt lapok megtekintése</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Kivételek</string>
@@ -2529,6 +2579,8 @@
<string name="translations_bottom_sheet_negative_button">Most nem</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Eredeti megjelenítése</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Eredeti, lefordítatlan oldal betöltve</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Kész</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2712,13 +2764,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Navigálás visszafelé</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Hibakereső fiók megnyitása</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Lapeszközök</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Lapok száma</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktív</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktív</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktív</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inaktív</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
diff --git a/mobile/android/fenix/app/src/main/res/values-hy-rAM/strings.xml b/mobile/android/fenix/app/src/main/res/values-hy-rAM/strings.xml
index 4b5ebebaef..7ae4420a7b 100644
--- a/mobile/android/fenix/app/src/main/res/values-hy-rAM/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-hy-rAM/strings.xml
@@ -24,7 +24,7 @@
<!-- Placeholder text shown in search bar when using tabs search -->
<string name="tab_search_hint">Որոնել ներդիրներ</string>
<!-- Placeholder text shown in the search bar when using application search engines -->
- <string name="application_search_hint">Մուտքագրեք որոնվող բառը</string>
+ <string name="application_search_hint">Մուտքագրեք որոնման եզրույթներ</string>
<!-- No Open Tabs Message Description -->
<string name="no_open_tabs_description">Ձեր բաց ներդիրները կցուցադրվեն այստեղ:</string>
@@ -199,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Հավելումներ</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Ընդլայնումներ</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Կառավարել ընդլայնումները</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Բացահայտեք ավելի շատ ընդլայնումներ</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Հաշվի տվյալներ</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -217,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">Բացել կանոնավոր ներդիրում</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Ավելացնել Տնային էկրանին</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Ավելացնել Տուն էկրանին…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Տեղադրել</string>
@@ -229,9 +235,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Թարգմանել էջը</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Պահել հավաքածույում…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Պահպանել հավաքածուում</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Տարածել</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Համօգտագործել…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Բացել %1$s-ում</string>
@@ -284,6 +294,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Պահպանել</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Էջանշել այս էջը</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Խմբագրել Էջանիշը</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Պահել որպես PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Միացնել Ընթերցելու եղանակը</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Անջատել Ընթերցելու եղանակը</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Թարգմանել էջը…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Թարգմանված է %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Տպել…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Այստեղ ընդլայնումներ չկան</string>
@@ -379,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox֊ի գաղտնիության ծանուցում</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Իմացեք ավելին մեր գաղտնիության ծանուցման մեջ</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Մենք սիրում ենք ձեզ ապահով պահել</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -589,7 +615,9 @@
<string name="preferences_language">Լեզու</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Թարգմանություն</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Թարգմանություն</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Թարգմանություններ</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Տվյալների ընտրություն</string>
<!-- Preference for data collection -->
@@ -662,10 +690,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Պահանջված</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Կամընտրական</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Կարդալ և փոխել վեբկայքի տվյալները</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Ջնջել վեբկայքը</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Թույլատրել բոլոր կայքերի համար</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -790,8 +814,6 @@
<string name="preferences_sync_history">Պատմություն</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Էջանիշեր</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Մուտքանուններ</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Գաղտնաբառեր</string>
<!-- Preference for syncing tabs -->
@@ -818,8 +840,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s-ը %2$s %3$s-ում</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Բանկային քարտեր</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Վճարամիջոցներ</string>
<!-- Preference for syncing addresses -->
@@ -835,6 +855,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Ներդիր %s-ից</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s-ի փակված ներդիրները՝ %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Դիտել վերջերս փակված ներդիրները</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Բացառություններ</string>
@@ -869,7 +897,7 @@
<!-- Pairing Feature strings -->
<!-- Instructions on how to access pairing -->
- <string name="pair_instructions_2"><![CDATA[Սկանացրեք <b>firefox.com/pair</b>-ում ցուցադրված QR կոդը]]></string>
+ <string name="pair_instructions_2"><![CDATA[Սկանավորեք <b>firefox.com/pair</b>-ում ցուցադրված QR կոդը]]></string>
<!-- Toolbar Preferences -->
<!-- Preference for using top toolbar -->
@@ -1022,7 +1050,7 @@
<!-- Dialog button text for canceling removing a study. -->
<string name="studies_restart_dialog_cancel">Չեղարկել</string>
<!-- Toast shown after turning on/off studies preferences -->
- <string name="studies_toast_quit_application" tools:ignore="UnusedResources">Փոփոխությունները գործադրելու համար դուրս է գալիս հավելվածից…</string>
+ <string name="studies_toast_quit_application" tools:ignore="UnusedResources">Փոփոխությունները կիրառելու համար լքում է հավելվածը…</string>
<!-- Sessions -->
<!-- Title for the list of tabs -->
@@ -1091,7 +1119,7 @@
<!-- History -->
<!-- Text for the button to search all history -->
- <string name="history_search_1">Մուտքագրեք որոնվող բառը</string>
+ <string name="history_search_1">Մուտքագրեք որոնման եզրույթներ</string>
<!-- Text for the button to clear all history -->
<string name="history_delete_all">Ջնջել պատմությունը</string>
<!-- Text for the snackbar to confirm that multiple browsing history items has been deleted -->
@@ -1134,7 +1162,7 @@
<!-- Crashes -->
<!-- Title text displayed on the tab crash page. This first parameter is the name of the application (For example: Fenix) -->
- <string name="tab_crash_title_2">Ներողություն. %1$s-ը չի կարող բեռնել այդ էջը:</string>
+ <string name="tab_crash_title_2">Ներողություն: %1$s-ը չի կարող բեռնել այդ էջը:</string>
<!-- Send crash report checkbox text on the tab crash page -->
<string name="tab_crash_send_report">Ուղարկել վթարի զեկույցը Mozilla-ին</string>
<!-- Close tab button text on the tab crash page -->
@@ -1210,7 +1238,7 @@
<string name="bookmark_undo_deletion">ՀԵՏԱՐԿԵԼ</string>
<!-- Text for the button to search all bookmarks -->
- <string name="bookmark_search">Մուտքագրեք որոնվող բառը</string>
+ <string name="bookmark_search">Մուտքագրեք որոնման եզրույթներ</string>
<!-- Site Permissions -->
<!-- Button label that take the user to the Android App setting -->
@@ -1266,7 +1294,7 @@
<!-- Summary of tracking protection preference if tracking protection is set to off -->
<string name="tracking_protection_off">Անջ.</string>
<!-- Summary of tracking protection preference if tracking protection is set to standard -->
- <string name="tracking_protection_standard">Ստանդարտ</string>
+ <string name="tracking_protection_standard">Սովորական</string>
<!-- Summary of tracking protection preference if tracking protection is set to strict -->
<string name="tracking_protection_strict">Խիստ</string>
<!-- Summary of tracking protection preference if tracking protection is set to custom -->
@@ -1390,7 +1418,7 @@
<!-- Confirmation dialog button -->
<string name="sync_confirmation_button">Հասկացա</string>
<!-- Share error message -->
- <string name="share_error_snackbar">Հնարավոր չէ տարածել այս հավելվածին</string>
+ <string name="share_error_snackbar">Չստացվեց տարածել այս հավելվածին</string>
<!-- Add new device screen title -->
<string name="sync_add_new_device_title">Ուղարկել սարքի</string>
<!-- Text for the warning message on the Add new device screen -->
@@ -1586,7 +1614,7 @@
<!-- Instructions on how to access pairing -->
<string name="sign_in_instructions"><![CDATA[Ձեր համակարգչում բացեք Firefox-ը և անցեք <b>https://firefox.com/pair</b>]]></string>
<!-- Text shown for sign in pairing when ready -->
- <string name="sign_in_ready_for_scan">Պատրաստ է սկանավորել</string>
+ <string name="sign_in_ready_for_scan">Պատրաստ է սկանավորման</string>
<!-- Text shown for settings option for sign with pairing -->
<string name="sign_in_with_camera">Մուտք գործել Ձեր տեսախցիկով</string>
<!-- Text shown for settings option for sign with email -->
@@ -1614,7 +1642,7 @@
<!-- Text displayed that links to website about enhanced tracking protection -->
<string name="preference_enhanced_tracking_protection_explanation_learn_more">Իմանալ ավելին</string>
<!-- Preference for enhanced tracking protection for the standard protection settings -->
- <string name="preference_enhanced_tracking_protection_standard_default_1">Ստանդարտ (սկզբնադիր)</string>
+ <string name="preference_enhanced_tracking_protection_standard_default_1">Սովորական (սկզբնադիր)</string>
<!-- Preference description for enhanced tracking protection for the standard protection settings -->
<string name="preference_enhanced_tracking_protection_standard_description_5">Էջերը նորմալ կբեռնվեն, բայց արգելափակվելու են ավելի քիչ հետագծիչներ:</string>
<!-- Accessibility text for the Standard protection information icon -->
@@ -1761,12 +1789,8 @@
<string name="add_to_homescreen_description_2">Հեշտությամբ կարող եք ավելացնել այս կայքը ձեր հեռախոսի Տնային էկրանին՝ ակնթարթորեն մատչելու և արագ դիտարկելու համար:</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Մուտքանուններ և գաղտնաբառեր</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Գաղտնաբառեր</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Պահպանել մուտքանունները և գաղտնաբառերը</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Պահել գաղտնաբառերը</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Հարցնել պահպանելիս</string>
@@ -1781,46 +1805,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Լրացրեք օգտանունները և գաղտնաբառերը Ձեր սարքի այլ հավելվածներում:</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Հավելել մուտքանուն</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Հավելել գաղտնաբառ</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Համաժամեցնել մուտքանունները</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Համաժամեցնել գաղտնաբառերը</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Համաժամեցնել մուտքանունները սարքերի միջև</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Համաժամեցնել գաղտնաբառերը սարքերի միջև</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Պահպանված մուտքանուններ</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Պահված գաղտնաբառեր</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">%s-ի հետ ձեր պահպանած կամ համաժամեցրած մուտքանունները կցուցադրվեն այստեղ:</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Այն գաղտնաբառերը, որոնք դուք պահում կամ համաժամացնում եք %s-ի հետ, կցուցադրվեն այստեղ: Ձեր պահած բոլոր գաղտնաբառերը գաղտնագրված են:</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Իմանալ ավելին համաժամեցման մասին:</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Իմանալ ավելին Սինքի մասին</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Բացառություններ</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Մուտքանունները և գաղտնաբառերը, որոնք չեն պահպանվել, կցուցադրվեն այստեղ:</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s-ը չի պահի այստեղ թվարկված կայքերի գաղտնաբառերը:</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Մուտքանունները և գաղտնաբառերը չեն պահպանվի այս կայքերի համար:</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s-ը չի պահի այս կայքերի գաղտնաբառերը:</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Ջնջել բոլոր բացառությունները</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Որոնել մուտքանուններ</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Որոնել գաղտնաբառեր</string>
<!-- The header for the site that a login is for -->
@@ -1850,17 +1855,11 @@
<string name="saved_login_reveal_password">Ցուցադրել գաղտնաբառը</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Թաքցնել գաղտնաբառը</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ապակողպեք՝ դիտելու համար պահպանված մուտքանունները</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Ապակողպեք՝ դիտելու համար պահված գաղտնաբառերը</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Անվտանգ դարձրեք ձեր մուտքանունները և գաղտնաբառերը</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Անվտանգ դարձրեք ձեր պահված գաղտնաբառերը</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ստեղծեք սարքի կողպեքի նմուշ, PIN կամ գաղտնաբառ՝ ձեր պահպանված մուտքանունները և գաղտնաբառերը մուտք գործելուց պաշտպանելու համար, եթե ձեր սարքը ուրիշի ձեռքն ընկնի:</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Տեղակայեք սարքի կողպման նախշ, PIN կամ գաղտնաբառ՝ պաշտպանելու պահված գաղտնաբառերն այն դեպքում, եթե որևէ մեկը ևս մուտք ունենա Ձեր սարքին:</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Հետո</string>
@@ -1878,51 +1877,35 @@
<string name="saved_logins_sort_strategy_alphabetically">Անվան (Ա-Ֆ)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Վերջին օգտագործվածը</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Տեսակավորել մուտագրումների ցանկը</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Տեսակավորել գաղտնաբառերի ցանկը</string>
<!-- Autofill -->
<!-- Preference and title for managing the autofill settings -->
- <string name="preferences_autofill">Ինքնալցում</string>
+ <string name="preferences_autofill">Ինքնալրացում</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Հասցեներ</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Բանկային քարտեր</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Վճարամիջոցներ</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Պահել և ինքնալրացնել քարտերը</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Պահել և լրացնել վճարամիջոցները</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Տվյալները գաղտնագրված են</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s-ը գաղտնագրում է ձեր պահած բոլոր վճարամիջոցները</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Համաժամեցնել քարտերը սարքերի միջև</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Համաժամեցնել քարտերը</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Ավելացնել բանկային քարտ</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Հավելել քարտ</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Կառավարել պահված քարտերը</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Կառավարել քարտերը</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Ավելացնել հասցե</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Կառավարեք հասցեները</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Պահել և ինքնալրացնել քարտերը</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Պահել և լրացնել հասցեները</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Ներառել տեղեկություններ, ինչպիսիք են համարները, էլ.փոստը և առաքման հասցեները</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Ներառում է հեռախոսահամարներ և էլ. փոստի հասցեներ</string>
@@ -1946,8 +1929,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Ջնջել քարտը</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Համոզվա՞ծ եք, որ ցանկանում եք ջնջել այս բանկային քարտը:</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Ջնջե՞լ քարտը</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Ջնջել</string>
@@ -1961,24 +1942,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Պահպանված քարտեր</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Մուտքագրեք բանկային վավեր քարտի համար</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Մուտքագրեք ճիշտ քարտի համար</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Լրացրեք այս դաշտը</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Հավելել անուն</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Ապակողպեք՝ դիտելու համար պահպանված քարտերը</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Անվտանգ դարձրեք ձեր բանկային քարտերը</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Անվտանգ դարձրեք ձեր պահած վճարամիջոցները</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Տեղակայեք սարքի կողպման նախշ, PIN կամ գաղտնաբառ՝ պաշտպանելու պահված բանկային քարտերը այն դեպքում, եթե որևէ մեկը ևս մուտք ունի Ձեր սարքին:</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Տեղակայեք սարքի կողպման նախշ, PIN կամ գաղտնաբառ՝ պաշտպանելու ձեր քարտերն այն դեպքում, եթե որևէ մեկը ևս մուտք ունենա Ձեր սարքին:</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Տեղակայել հիմա</string>
@@ -1986,8 +1958,6 @@
<string name="credit_cards_warning_dialog_later">Ավելի ուշ</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Ապակողպեք ձեր սարքը</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ապակողպեք՝ օգտագործելու համար բանկային քարտերի պահված տեղեկությունները</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Ապակողպեք՝ պահված վճարամիջոցն օգտագործելու համար</string>
@@ -1997,12 +1967,6 @@
<string name="addresses_edit_address">Խմբագրել հասցեն</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Կառավարեք հասցեները</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Անուն</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Հայրանուն</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Ազգանուն</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Անուն</string>
<!-- The header for the street address of an address -->
@@ -2028,8 +1992,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Ջնջել հասցեն</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ջնջե՞լ այս հասցեն:</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Ջնջե՞լ այս հասցեն:</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Ջնջել</string>
@@ -2126,49 +2088,29 @@
<string name="login_menu_delete_button">Ջնջել</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Խմբագրել</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Համոզվա՞ծ եք, որ ցանկանում եք ջնջել այս մուտքանունը:</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Համոզվա՞ծ եք, որ ցանկանում եք ջնջել այս գաղտնաբառը:</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Ջնջել</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Չեղարկել</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Մուտքի ընտրանքներ</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Գաղտնաբառի ընտրանքներ</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Խմբագրելի տեքստի դաշտը մուտքի վեբ հասցեի համար:</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Խմբագրելի տեքստի դաշտ կայքի հասցեի համար:</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Խմբագրելի տեքստի դաշտը մուտք գործողի համար:</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Խմբագրելի տեքստի դաշտ օգտվողի անվան համար:</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Խմբագրելի տեքստի դաշտը մուտքի գաղտնաբառի համար:</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Խմբագրելի տեքստի դաշտ գաղտնաբառի համար:</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Պահպանել փոփոխությունները մուտքագրման համար:</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Պահել փոփոխությունները:</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Խմբագրել</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Խմբագրել գաղտնաբառը</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Հավելել նոր մուտքանուն</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Հավելել գաղտնաբառ</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Գաղտնաբառ է պահանջվում</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Մուտքագրեք գաղտնաբառ</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Օգտվողի անունը պարտադիր է</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Մուտքագրեք օգտվողի անունը</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Հոսթի անունը պարտադիր է</string>
@@ -2576,6 +2518,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Փակել թարգմանությունների թերթիկը</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Որոշ կարգավորումներ ժամանակավորապես անհասանելի են։</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Թարգմանություններ</string>
@@ -2598,6 +2543,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Ընտրեք լեզուն՝ «միշտ թարգմանել» և «երբեք չթարգմանել» նախապատվությունները կառավարելու համար:</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Չստացվեց բեռնել լեզուները։ Խնդրում ենք կրկին ստուգել՝ ավելի ուշ։</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Թարգմանելու առաջարկ (սկզբնադիր)</string>
@@ -2620,6 +2568,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Հեռացնել %1$s-ը</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Չստացվեց բեռնել կայքերը։ Խնդրում ենք կրկին ստուգել՝ ավելի ուշ։</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Ջնջե՞լ %1$s-ը:</string>
@@ -2697,13 +2647,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Նավարկել հետ</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Բացել վրիպազերծման գզրոցը</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Ներդիրի գործիքներ</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Ներդիրների քանակը</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Ակտիվ</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Ակտիվ</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Ակտիվ</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Անգործուն</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2714,6 +2669,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Ներդիրների ստեղծման գործիք</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Ներդիրների քանակ ստեղծելու համար</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Տեքստային դաշտը դատարկ է</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Խնդրում ենք մուտքագրել միայն դրական ամբողջ թվեր</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Խնդրում ենք մուտքագրել զրոյից մեծ թիվ</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Գերազանցվել է ներդիրների առավելագույն քանակը (%1$s), որոնք կարող են ստեղծվել մեկ գործողության ընթացքում</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Հավելել ակտիվ ներդիրներին</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2730,11 +2695,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Գաղտնիության դրույթներ</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Ուղարկել</string>
+ <string name="micro_survey_submit_button_label">Ուղարկել</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Փակել</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Փակել</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Շնորհակալությո՜ւն Ձեր արձագանքի համար:</string>
+ <string name="micro_survey_feedback_confirmation">Շնորհակալությո՜ւն Ձեր արձագանքի համար:</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Շատ գոհ</string>
<!-- Option for likert scale -->
@@ -2746,6 +2711,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Շատ դժգոհ</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Բացել հարցումը</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Փակել հարցումը</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Փակել</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Մուտքանուններ</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-ia/strings.xml b/mobile/android/fenix/app/src/main/res/values-ia/strings.xml
index 8aed75c096..91b8cce44c 100644
--- a/mobile/android/fenix/app/src/main/res/values-ia/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-ia/strings.xml
@@ -202,6 +202,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Additivos</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensiones</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gerer extensiones</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Discoperir altere extensiones</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informationes del conto</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -220,6 +224,8 @@
<string name="browser_menu_open_in_regular_tab">Aperir in un scheda regular</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Adder al pagina initial</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Adder al pagina initial…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -231,9 +237,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traducer le pagina</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Salvar al collection…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Salvar al collection</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Compartir</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Compartir…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Aperir in %1$s</string>
@@ -287,6 +297,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Salvar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Adder un marcapaginas pro iste pagina</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Rediger marcapagina</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Salvar como PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Activar modo lectura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Disactivar modo lectura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traducer le pagina…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traducite in %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimer…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Nulle extensiones hic</string>
@@ -385,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Aviso de confidentialitate de Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Lege nostre aviso de confidentialitate</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">A nos place mantener te secur</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -598,7 +624,9 @@
<!-- Preference for language -->
<string name="preferences_language">Lingua</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Traduction</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traduction</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traductiones</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Selectiones de datos</string>
<!-- Preference for data collection -->
@@ -669,10 +697,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Necessari</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Optional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Leger e cambiar datos del sito web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Deler le sito web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permitter a tote le sitos</string>
@@ -801,8 +825,6 @@
<string name="preferences_sync_history">Chronologia</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marcapaginas</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credentiales</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Contrasignos</string>
<!-- Preference for syncing tabs -->
@@ -829,8 +851,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s sur %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartas de credito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Methodos de pagamento</string>
<!-- Preference for syncing addresses -->
@@ -848,6 +868,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Scheda veniente de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Schedas de %1$s clause: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Vider schedas recentemente claudite</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Exceptiones</string>
@@ -1810,13 +1838,8 @@
<string name="add_to_homescreen_description_2">Tu pote facilemente adder iste sito web al Pagina initial de tu apparato pro haber accesso instantanee e navigar plus veloce con un experientia simile al app.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Credentiales e contrasignos
-</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Contrasignos</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar credentiales e contrasignos</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Salvar contrasignos</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Demandar pro salvar</string>
@@ -1833,46 +1856,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Plenar nomines de usator e contrasignos in altere apps sur tu apparato.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Adder credentiales</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Adder contrasigno</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchronisar credentiales</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synchronisar contrasignos</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchronisar credentiales inter le apparatos</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synchronisar contrasignos inter apparatos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credentiales salvate</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Contrasignos salvate</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Le credentiales que tu salva o synchronisa a in %s apparera hic.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Le contrasignos que tu salva o synchronisa in %s sera listate ci. Tote le contrasignos que tu salva es cryptate.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Apprender plus re Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Apprender plus re le synchronisation</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Exceptiones</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Credentiales e contrasignos que non es salvate essera monstrate hic.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s non salvara le password pro le sitos ci listate.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Credentiales e contrasignos non sera salvate pro iste sitos.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s non salvara le contrasignos pro iste sitos.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Deler tote le exceptiones</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Cercar credentiales</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Cercar contrasignos</string>
<!-- The header for the site that a login is for -->
@@ -1901,17 +1905,11 @@
<string name="saved_login_reveal_password">Monstrar contrasigno</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Celar contrasigno</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Disbloca pro vider tu credentiales salvate</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Disbloca pro vider tu contrasignos salvate</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Assecurar tu credentiales e contrasignos</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Protege tu contrasignos salvate</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Implementa un patrono de blocada apparato, PIN o contrasigno pro proteger tu credentiales e contrasignos salvate de esser accedite, si alcuno altere ha tu apparato.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Implementa un patrono de blocada apparato, PIN o contrasigno pro proteger tu contrasignos de esser accedite, si alcuno altere ha tu apparato.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Plus tarde</string>
@@ -1929,9 +1927,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Ultimemente usate</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ordinar menu de credentiales</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Ordinar le menu del contrasignos</string>
@@ -1940,16 +1935,10 @@
<string name="preferences_autofill">Autoplenar</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresses</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartas de credito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Methodos de pagamento</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gerer le cartas salvate</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Salvar e compilar methodos de pagamento automaticamente</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Datos es cryptate</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s crypta tote tu methodos de pagamento salvate</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
@@ -1957,12 +1946,8 @@
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synchronisar cartas</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Adde un carta de credito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Adder carta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gerer le cartas salvate</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Gerer le cartas</string>
<!-- Preference option for adding an address -->
@@ -1970,13 +1955,8 @@
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Gerer adresses</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar e autoplenar adresses</string>
-
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Salvar e compilar automaticamente adresses</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Includer informationes como numeros, email e adresses de expedition</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Include numeros de telephono e adresses email</string>
@@ -2000,8 +1980,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Deler carta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Desira tu vermente deler iste carta de credito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Deler carta?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Deler</string>
@@ -2015,24 +1993,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Cartas salvate</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Insere un numero valide de carta de credito</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Insere un numero de carta valide</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Completa iste campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Adde un nomine</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Disbloca pro vider tu cartas salvate</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Protege tu carta de credito</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Protege tu methodo de pagamento salvate</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Implementa un patrono de blocada apparato, PIN o contrasigno pro proteger tu cartas de credito de esser accedite, si alcuno altere ha tu apparato.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Implementa un patrono de blocada apparato, PIN o contrasigno pro proteger tu methodos de pagamento salvate de esser accedite, si alcun altere ha tu apparato.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Implementar ora</string>
@@ -2041,9 +2010,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Disbloca tu apparato</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Disbloca pro usar le informationes de carta de credito immagazinate</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Disblocar pro usar le methodo de pagamento salvate</string>
<!-- Title of the "Add address" screen -->
@@ -2052,12 +2018,6 @@
<string name="addresses_edit_address">Modificar le adresse</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Gerer addresses</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Prenomine</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Nomine intermedie</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Nomine de familia</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nomine</string>
<!-- The header for the street address of an address -->
@@ -2084,8 +2044,6 @@
<string name="addressess_delete_address_button">Deler adresses</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desira tu vermente deler iste adresses?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Deler iste adresses?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Deler</string>
@@ -2185,50 +2143,30 @@
<string name="login_menu_delete_button">Deler</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Rediger</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Desira tu vermente deler iste credentiales?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Desira tu vermente deler iste contrasigno?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Deler</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancellar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Optiones de apertura de session</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Optiones de contrasigno</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Le campo de texto redigibile pro le adresse web del credentiales.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Le campo de texto redigibile pro le adresse del sito web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Le campo de texto redigibile pro le nomine de usator del accesso.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Le campo de texto redigibile pro le nomine de usator.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Le campo de texto redigibile pro le contrasigno del credentiales.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Le campo de texto redigibile pro le contrasigno.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar cambiamentos a credentiales.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Salvar le cambiamentos.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Rediger</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Modificar le contrasigno</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Adder nove credential</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Adder contrasigno</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Contrasigno requirite</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Insere un contrasigno</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Nomine de usator necesse.</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Insere un nomine de usator</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Nomine de servitor necesse.</string>
@@ -2636,6 +2574,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Eliger folio de traductiones</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Alcun parametros es temporarimente indisponibile.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traduction</string>
@@ -2658,6 +2599,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Elige un lingua pro gerer le preferentias “sempre traducer” e “jammais traducer”.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Impossibile cargar le linguas. Re-controla plus tarde.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Offerer le traduction (predefinite)</string>
@@ -2680,6 +2624,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Remover %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Impossibile cargar sitos. Retenta plus tarde.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Deler %1$s?</string>
@@ -2757,13 +2703,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Naviga a retro</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Aperir tiratorio de depuration</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Numero de schedas</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Numero de schedas</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Active</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Active</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Active</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactive</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2774,6 +2725,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Utensile pro creation de schedas</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Numero de schedas a crear</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Le campo de texto es vacue</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Solo insere numeros integre positive</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Insere un numero major que zero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Excedite le maxime numero de schedas (%1$s) que pote esser generate in un operation</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Adder a schedas active</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2790,11 +2751,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Aviso de confidentialitate</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Inviar</string>
+ <string name="micro_survey_submit_button_label">Inviar</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Clauder</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Clauder</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Gratias pro tu commentario!</string>
+ <string name="micro_survey_feedback_confirmation">Gratias pro tu commentario!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Absolutemente satisfacite</string>
<!-- Option for likert scale -->
@@ -2806,6 +2767,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Absolutemente non satisfacite</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Aperir sondage</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Clauder le questionario</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Clauder</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Authenticationes</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-is/strings.xml b/mobile/android/fenix/app/src/main/res/values-is/strings.xml
index 2cbbea4ff7..8c5d707a9c 100644
--- a/mobile/android/fenix/app/src/main/res/values-is/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-is/strings.xml
@@ -198,6 +198,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Viðbætur</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Forritsaukar</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Sýsla með forritsauka</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Uppgötvaðu fleiri forritsauka</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Upplýsingar um reikning</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -217,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">Opna í venjulegum flipa</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Bæta við á ræsisíðu</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Bæta við á upphafsskjá…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Setja upp</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -228,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Þýða síðu</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Vista í safn…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Vista í safn</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Deila</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Deila…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Opna með %1$s</string>
@@ -284,6 +294,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Vista</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Setja síðu í bókamerki</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Breyta bókamerki</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Vista sem PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Kveikja á lesham</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Slökkva á lesham</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Þýða síðu…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Þýtt á %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Prenta…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Engir forritsaukar hér</string>
@@ -380,8 +408,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Meðferð persónuupplýsinga í Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Sjáðu nánar í persónuverndaryfirlýsingu okkar</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Við fáum kikk út úr því að halda þér öruggum</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -591,7 +617,9 @@
<!-- Preference for language -->
<string name="preferences_language">Tungumál</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Þýðing</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Þýðing</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Þýðingar</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Gagnamöguleikar</string>
<!-- Preference for data collection -->
@@ -663,10 +691,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Nauðsynlegt</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Valkvætt</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Lesa og breyta vefsíðugögnum</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Eyða vefsvæði</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Leyfa fyrir öll vefsvæði</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -792,8 +816,6 @@
<string name="preferences_sync_history">Feril</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Bókamerki</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Innskráningar</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Lykilorð</string>
<!-- Preference for syncing tabs -->
@@ -820,8 +842,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s á %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Greiðslukort</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Greiðslumátar</string>
<!-- Preference for syncing addresses -->
@@ -837,6 +857,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Flipi frá %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s flipum lokað: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Skoða nýjustu flipa sem var lokað</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Undanþágur</string>
@@ -1759,12 +1787,8 @@
<string name="add_to_homescreen_description_2">Þú getur á auðveldan hátt bætt þessu vefsvæði á upphafsskjáinn þinn fyrir auðveldara aðgengi og hraðara vafur.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Innskráning og lykilorð</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Lykilorð</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Vista innskráningu og lykilorð</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Vista lykilorð</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Biðja um að vista</string>
@@ -1779,48 +1803,30 @@
<string name="preferences_android_autofill">Sjálfvirk útfylling í öðrum forritum</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Fylltu út notendanöfn og lykilorð í öðrum forritum á tækinu þínu.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Bæta við innskráningu</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Bæta við lykilorði</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Samstilla innskráningar</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Samstilla lykilorð</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Samstilla innskráningar milli tækja</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Samstilla lykilorð milli tækja</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Vistaðar innskráningar</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Vistuð lykilorð</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Innskráningarnar sem þú vistar eða samstillir við %s birtast hér.</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Lykilorðin sem þú vistar eða samstillir við %s verða skráð hér. Öll lykilorð sem þú vistar eru dulrituð.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Læra meira um samstillingu.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Frekari upplýsingar um samstillingu</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Undanþágur</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Innskráningar og lykilorð sem ekki eru vistuð sjást hér.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s mun ekki vista lykilorð fyrir vefsvæði sem skráð eru hér.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Innskráningar og lykilorð verða ekki vistuð fyrir þessi vefsvæði.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s mun ekki vista lykilorð fyrir þessi vefsvæði.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Eyða öllum undantekningum</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Leita að innskráningu</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Leita að lykilorðum</string>
<!-- The header for the site that a login is for -->
@@ -1849,17 +1855,11 @@
<string name="saved_login_reveal_password">Sýna lykilorð</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Fela lykilorð</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Aflæstu til að skoða vistaðar innskráningar</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Aflæstu til að skoða vistuð lykilorð</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Verndaðu innskráningar þínar og lykilorð</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Tryggðu öryggi vistuðu lykilorðanna þinna</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Settu upp læsimynstur, PIN eða lykilorð til að vernda vistaðar innskráningar og lykilorð ef ske kynni að einhver annar komist yfir tækið þitt.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Settu upp læsimynstur, PIN-númer eða lykilorð til að vernda vistuðu lykilorðin þín ef ske kynni að einhver annar komist yfir tækið þitt.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Síðar</string>
@@ -1877,8 +1877,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nafn (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Síðast notað</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Raða innskráningarvalmyndinni</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Raða lykilorðavalmynd</string>
@@ -1888,40 +1886,26 @@
<string name="preferences_autofill">Sjálfvirk útfylling</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Tölvupóstföng</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Greiðslukort</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Greiðslumátar</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Vista og fylla sjálfkrafa út í greiðslukort</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Vista og fylla út greiðslumáta</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Gögn eru dulrituð</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s dulritar alla greiðslumáta sem þú vistar</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Samstilla greiðslukort milli tækja</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Samstilla kort</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Bæta við greiðslukorti</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Bæta við korti</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Sýsla með vistuð greiðslukort</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Sýsla með greiðslukort</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Bæta við tölvupóstfangi</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Sýsla með tölvupóstföng</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Vista og fylla sjálfkrafa út heimilisföng</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Vista og fylla út í heimilisföng</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Láta upplýsingar eins og símanúmer, tölvupóstföng og heimilisföng fylgja með</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Þar með talin símanúmer og tölvupóstföng</string>
@@ -1946,8 +1930,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Eyða korti</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ertu viss um að þú viljir eyða þessu greiðslukorti?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Eyða korti?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Eyða</string>
@@ -1959,23 +1941,15 @@
<string name="credit_cards_cancel_button">Hætta við</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Vistuð greiðslukort</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Settu inn gilt kortanúmer</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Settu inn gilt kortanúmer</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Fylltu út í þennan reit</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Bættu við nafni</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Aflæsa til að skoða vistuð greiðslukort</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Haltu kreditkortunum þínum öruggum</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Tryggðu öryggi vistuðu greiðslumátanna þinna</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Settu upp læsimynstur, PIN-númer eða lykilorð til að vernda vistuðu greiðslukortin þín ef ske kynni að einhver annar komist yfir tækið þitt.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Settu upp læsimynstur, PIN-númer eða lykilorð til að vernda vistuðu greiðslumátana þína ef ske kynni að einhver annar komist yfir tækið þitt.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Setja upp núna</string>
@@ -1983,8 +1957,6 @@
<string name="credit_cards_warning_dialog_later">Síðar</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Aflæstu tækinu þínu</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Aflæstu til að nota geymdar kreditkortaupplýsingar</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Aflæstu til að nota vistaða greiðslumáta</string>
@@ -1994,12 +1966,6 @@
<string name="addresses_edit_address">Breyt tölvupóstfangi</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Sýsla með tölvupóstföng</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Skírnarnafn</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Millinafn</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Eftirnafn</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nafn</string>
<!-- The header for the street address of an address -->
@@ -2026,8 +1992,6 @@
<string name="addressess_delete_address_button">Eyða heimilisfangi</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ertu viss um að þú viljir eyða þessu póstfangi?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Eyða þessu heimilisfangi?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Eyða</string>
@@ -2126,49 +2090,29 @@
<string name="login_menu_delete_button">Eyða</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Breyta</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ertu viss um að þú viljir eyða þessari innskráningu?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Ertu viss um að þú viljir eyða þessu lykilorði?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Eyða</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Hætta við</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Innskráningarvalkostir</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Valkostir lykilorðs</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Breytilegi textareiturinn fyrir veffang þessarar innskráningarinnar.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Breytanlegi textareiturinn fyrir vistfang vefsvæðisins.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Breytilegi textareiturinn fyrir notandanafn innskráningarinnar.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Breytanlegi textareiturinn fyrir notandanafnið.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Breytilegi textareiturinn fyrir lykilorð innskráningarinnar.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Breytanlegi textareiturinn fyrir lykilorðið.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Vista breytingar á innskráningu.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Vista breytingar.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Breyta</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Breyta lykilorði</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Bæta við nýrri innskráningu</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Bæta við lykilorði</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Lykilorðs krafist</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Settu inn lykilorð</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Notandanafn er nauðsynlegt</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Settu inn notandanafn</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Hýsingarheiti er nauðsynlegt</string>
@@ -2577,6 +2521,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Loka þýðingarblaði</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Sumar stillingar eru ekki aðgengilegar eins og stendur.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Þýðingar</string>
@@ -2599,6 +2546,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Veldu tungumál til að stjórna stillingum á „alltaf þýða“ og „aldrei þýða“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Ekki tókst að hlaða tungumálum. Athugaðu aftur síðar.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Bjóðast til að þýða (sjálfgefið)</string>
@@ -2622,6 +2572,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Fjarlægja %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Ekki tókst að hlaðið inn vefsvæðum. Athugaðu aftur síðar.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Eyða %1$s?</string>
@@ -2699,13 +2651,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Fara til baka</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Opna villuleitarspjald</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Flipaverkfæri</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Fjöldi flipa</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Virkir</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Virkir</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Virkt</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Óvirkir</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2716,6 +2673,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Verkfæri til að búa til flipa</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Fjöldi flipa sem á að búa til</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Textareiturinn er tómur</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Settu aðeins inn jákvæðar heiltölur</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Settu inn tölu sem er stærri en núll</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Farið yfir hámarksfjölda flipa (%1$s) sem hægt er að búa til í einni aðgerð</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Bæta við virka flipa</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2732,11 +2699,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Meðferð persónuupplýsinga</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Senda inn</string>
+ <string name="micro_survey_submit_button_label">Senda inn</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Loka</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Loka</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Takk fyrir álit þitt!</string>
+ <string name="micro_survey_feedback_confirmation">Takk fyrir álit þitt!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Mjög ánægð/ur</string>
<!-- Option for likert scale -->
@@ -2748,6 +2715,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Mjög óánægð/ur</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Opna könnun</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Loka könnun</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Loka</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Innskráningar</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-it/strings.xml b/mobile/android/fenix/app/src/main/res/values-it/strings.xml
index 36c423b38d..84154422c7 100644
--- a/mobile/android/fenix/app/src/main/res/values-it/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-it/strings.xml
@@ -201,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Componenti aggiuntivi</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Estensioni</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gestisci estensioni</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Scopri altre estensioni</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informazioni sull’account</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -219,6 +223,8 @@
<string name="browser_menu_open_in_regular_tab">Apri in scheda normale</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Agg. a schermata principale</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Agg. a schermata principale…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installa</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -230,10 +236,14 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traduci pagina</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Salva in una raccolta…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Salva in una raccolta</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Condividi</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Condividi…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Apri in %1$s</string>
@@ -288,6 +298,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Salva</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Aggiungi pagina ai segnalibri</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Modifica segnalibro</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Salva come PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Attiva Modalità lettura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Disattiva Modalità lettura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traduci pagina…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Tradotta in %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Stampa…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Nessuna estensione disponibile</string>
@@ -385,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Informativa sulla privacy di Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Ulteriori informazioni nella nostra informativa sulla privacy</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Ci piace mantenerti al sicuro</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -596,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">Lingua</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Traduzione</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traduzione</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traduzioni</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Condivisione dati</string>
<!-- Preference for data collection -->
@@ -671,10 +699,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Obbligatorio</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Facoltativo</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Leggere e modificare i dati dei siti web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Elimina sito web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Consenti per tutti i siti</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -802,8 +826,6 @@
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Segnalibri</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenziali</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Password</string>
<!-- Preference for syncing tabs -->
@@ -830,8 +852,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s su %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Carte di credito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Metodi di pagamento</string>
<!-- Preference for syncing addresses -->
@@ -848,6 +868,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Scheda da %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Schede di %1$s chiuse: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Visualizza schede chiuse di recente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Eccezioni</string>
@@ -1802,12 +1830,8 @@
<string name="add_to_homescreen_description_2">È possibile aggiungere questo sito web alla schermata principale del dispositivo per accedervi più rapidamente, come se si trattasse di un’app.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenziali e password</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Password</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Salva credenziali e password</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Salva password</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Chiedi prima di salvare</string>
@@ -1823,46 +1847,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Compila nomi utente e password nelle altre app del tuo dispositivo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Aggiungi credenziali</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Aggiungi password</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizza le credenziali</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizza password</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizza credenziali tra dispositivi</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronizza le password tra i tuoi dispositivi</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenziali salvate</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Password salvate</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Le credenziali salvate o sincronizzate in %s verranno visualizzate qui.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Le password salvate o sincronizzate con %s verranno visualizzate qui. Tutte le password salvate sono crittate.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Ulteriori informazioni su Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Ulteriori informazioni sulla sincronizzazione</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Eccezioni</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Le credenziali e le password non salvate verranno mostrate qui.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s non salverà le password per i siti elencati qui.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Le credenziali e le password non verranno salvate per questi siti.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s non salverà le password per questi siti.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Elimina tutte le eccezioni</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Cerca credenziali</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Cerca nelle password</string>
<!-- The header for the site that a login is for -->
@@ -1891,17 +1896,11 @@
<string name="saved_login_reveal_password">Mostra password</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Nascondi password</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Sblocca per visualizzare le credenziali salvate</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Sblocca per visualizzare le password salvate</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Proteggi le credenziali di accesso</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Proteggi le password salvate</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Imposta una sequenza di blocco, PIN o password per impedire a chi si impossessa del dispositivo di visualizzare le tue credenziali.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Imposta una sequenza di blocco, PIN o password per impedire a chi si impossessa del dispositivo di visualizzare le password salvate.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Più tardi</string>
@@ -1919,8 +1918,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nome (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Ultimo utilizzo</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Ordina il menu delle credenziali di accesso</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menu per ordinare le password</string>
@@ -1930,41 +1927,27 @@
<string name="preferences_autofill">Compilazione automatica</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Indirizzi</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Carte di credito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Metodi di pagamento</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvare e compilare automaticamente le carte</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Salva e compila i metodi di pagamento</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">I dati sono crittati</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s critta tutti i metodi di pagamento salvati</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizza le carte tra più dispositivi</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizza carte di credito</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Aggiungi una carta di credito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Aggiungi carta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gestione carte salvate</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Gestisci carte</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Aggiungi indirizzo</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Gestione indirizzi</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvare e compilare automaticamente gli indirizzi</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Salva e compila indirizzi</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Includere informazioni come numeri, email e indirizzi di spedizione</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Include numeri di telefono e indirizzi email</string>
@@ -1989,8 +1972,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Elimina carta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Eliminare questa carta di credito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Eliminare la carta?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Elimina</string>
@@ -2004,24 +1985,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Carte salvate</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Inserire un numero di carta di credito valido</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Inserisci un numero di carta valido</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Compilare questo campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Aggiungi un nome</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Sblocca per visualizzare le carte di credito salvate</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Proteggi le tue carte di credito</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Proteggi i metodi di pagamento salvati</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Imposta una sequenza di blocco, PIN o password per impedire a chi si impossessa del dispositivo di visualizzare le carte di credito salvate.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Imposta una sequenza di blocco, PIN o password per impedire a chi si impossessa del dispositivo di visualizzare i metodi di pagamento salvati.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Imposta adesso</string>
@@ -2030,9 +2002,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Sblocca il dispositivo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Sblocca per utilizzare le informazioni delle carte di credito salvate</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Sblocca per utilizzare i metodi di pagamento salvati</string>
<!-- Title of the "Add address" screen -->
@@ -2041,12 +2010,6 @@
<string name="addresses_edit_address">Modifica indirizzo</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Gestione indirizzi</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Nome</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Secondo nome</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Cognome</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nome</string>
<!-- The header for the street address of an address -->
@@ -2074,8 +2037,6 @@
<string name="addressess_delete_address_button">Elimina indirizzo</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Eliminare questo indirizzo?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Eliminare questo indirizzo?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Elimina</string>
@@ -2173,49 +2134,29 @@
<string name="login_menu_delete_button">Elimina</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Modifica</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Rimuovere queste credenziali?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Eliminare questa password?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Rimuovi</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Annulla</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opzioni credenziali</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opzioni password</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Il campo di testo modificabile per l’indirizzo web delle credenziali</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Il campo di testo modificabile per l’indirizzo del sito web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Il campo di testo modificabile per il nome utente delle credenziali</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Il campo di testo modificabile per il nome utente.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Il campo di testo modificabile per la password delle credenziali</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Il campo di testo modificabile per la password.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Salva le modifiche alle credenziali.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Salva modifiche.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Modifica</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Modifica password</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Aggiungi nuove credenziali</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Aggiungi password</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Password obbligatoria</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Inserisci una password</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Nome utente obbligatorio</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Inserisci un nome utente</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Nome server obbligatorio</string>
@@ -2627,6 +2568,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Chiudi il pannello per le traduzioni</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Alcune impostazioni sono temporaneamente non disponibili.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traduzioni</string>
@@ -2649,6 +2593,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Seleziona una lingua per gestire le preferenze “Traduci sempre” e “Non tradurre mai“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Impossibile caricare le lingue. Ricontrolla più tardi.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Proponi la traduzione (predefinita)</string>
@@ -2672,6 +2619,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Rimuovi %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Impossibile caricare i siti. Ricontrolla più tardi.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Rimuovere %1$s?</string>
@@ -2749,13 +2698,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Torna indietro</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Apri riquadro di navigazione a scomparsa per il debug</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Strumenti per le schede</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Conteggio schede</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Attive</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Attive</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Attive</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inattive</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2766,6 +2720,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Strumento per la creazione di schede</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Numero di schede da creare</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Il campo di testo è vuoto</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Inserire solo numeri interi positivi</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Inserire un numero maggiore di zero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Superato il numero massimo di schede (%1$s) che è possibile generare in una singola operazione</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Aggiungi a schede attive</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2782,11 +2746,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Informativa sulla privacy</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Invia</string>
+ <string name="micro_survey_submit_button_label">Invia</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Chiudi</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Chiudi</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Grazie per aver condiviso la tua opinione.</string>
+ <string name="micro_survey_feedback_confirmation">Grazie per aver condiviso la tua opinione.</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Molto soddisfatto/a</string>
<!-- Option for likert scale -->
@@ -2798,6 +2762,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Molto insoddisfatto/a</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Apri sondaggio</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Chiudi sondaggio</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Chiudi</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Credenziali</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-iw/strings.xml b/mobile/android/fenix/app/src/main/res/values-iw/strings.xml
index 6afb865f1c..934a428d3c 100644
--- a/mobile/android/fenix/app/src/main/res/values-iw/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-iw/strings.xml
@@ -199,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">תוספות</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">הרחבות</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">ניהול הרחבות</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">גילוי הרחבות נוספות</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">מידע על החשבון</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -217,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">פתיחה בלשונית רגילה</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">הוספה למסך הבית</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">הוספה למסך הבית…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">התקנה</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -228,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">תרגום הדף</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">שמירה לאוסף…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">שמירה לאוסף</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">שיתוף</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">שיתוף…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">פתיחה ב־%1$s</string>
@@ -283,6 +293,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">שמירה</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">יצירת סימנייה לדף זה</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">עריכת סימנייה</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">שמירה כ־PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">הפעלת תצוגת קריאה</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">כיבוי תצוגת קריאה</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">תרגום הדף…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">תורגם ל%1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">הדפסה…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">אין כאן הרחבות</string>
@@ -379,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">הצהרת הפרטיות של Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">מידע נוסף בהצהרת הפרטיות שלנו</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">אנחנו אוהבים לשמור עליך</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -586,7 +612,9 @@
<!-- Preference for language -->
<string name="preferences_language">שפה</string>
<!-- Preference for translation -->
- <string name="preferences_translation">תרגום</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">תרגום</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">תרגומים</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">בחירות נתונים</string>
<!-- Preference for data collection -->
@@ -660,10 +688,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">נדרש</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">לא חובה</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">קריאה ושינוי נתוני אתרים</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">מחיקת אתר</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">לאפשר לכל האתרים</string>
@@ -794,8 +818,6 @@
<string name="preferences_sync_history">היסטוריה</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">סימניות</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">כניסות</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">ססמאות</string>
<!-- Preference for syncing tabs -->
@@ -822,8 +844,6 @@
and the third is the device model. -->
<string name="default_device_name_2">‏%1$s על %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">כרטיסי אשראי</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">אמצעי תשלום</string>
<!-- Preference for syncing addresses -->
@@ -839,6 +859,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">לשונית מהמכשיר %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%2$d לשוניות נסגרו מ־%1$s</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">הצגת לשוניות שנסגרו לאחרונה</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">חריגות</string>
@@ -1770,12 +1798,8 @@
<string name="add_to_homescreen_description_2">באפשרותך להוסיף בקלות אתר זה למסך הבית של המכשיר שלך כדי לקבל גישה מיידית ולגלוש מהר יותר עם חוויה שמדמה שימוש ביישומון.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">כניסות וססמאות</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">ססמאות</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">שמירת כניסות וססמאות</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">שמירת ססמאות</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">לבקש לשמור</string>
@@ -1792,46 +1816,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">מילוי ושמירת שמות משתמשים וססמאות ביישומונים אחרים במכשיר שלך.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">הוספת כניסה</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">הוספת ססמה</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">סנכרון כניסות</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">סנכרון ססמאות</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">סנכרון כניסות בין מכשירים</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">סנכרון ססמאות בין מכשירים</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">כניסות שמורות</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">ססמאות שמורות</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">הכניסות שיישמרו או יסתנכרנו אל %s יופיעו כאן.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">הססמאות שיישמרו או יסונכרנו עם %s יופיעו כאן. כל הססמאות השמורות הינן מוצפנות.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">מידע נוסף על Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">מידע נוסף על סנכרון</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">חריגות</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">כניסות וססמאות שאינן שמורות יופיעו כאן.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">‏%s לא ישמור ססמאות לאתרים המפורטים כאן.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">כניסות וססמאות לא יישמרו עבור אתרים אלו.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">‏%s לא ישמור ססמאות לאתרים אלו.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">מחיקת כל החריגות</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">חיפוש כניסות</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">חיפוש ססמאות</string>
<!-- The header for the site that a login is for -->
@@ -1860,17 +1865,11 @@
<string name="saved_login_reveal_password">הצגת ססמה</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">הסתרת ססמה</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">יש לבטל את הנעילה כדי להציג את הכניסות השמורות שלך</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">יש לבטל את הנעילה כדי להציג את הססמאות השמורות שלך</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">שמירה מאובטחת של הכניסות והססמאות שלך</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">אבטחת הססמאות השמורות שלך</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ניתן להגדיר תבנית נעילת מכשיר, קוד או ססמה כדי להגן על פרטי הגישה והססמאות השמורות שלך מפני גורמים בלתי מהימנים שמחזיקים במכשיר שלך.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">ניתן להגדיר תבנית נעילת מכשיר, קוד או ססמה כדי להגן על הססמאות השמורות שלך מפני גורמים בלתי מהימנים שמחזיקים במכשיר שלך.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">מאוחר יותר</string>
@@ -1888,8 +1887,6 @@
<string name="saved_logins_sort_strategy_alphabetically">שם (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">שימוש אחרון</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">תפריט מיון כניסות</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">תפריט מיון ססמאות</string>
@@ -1899,42 +1896,28 @@
<string name="preferences_autofill">מילוי אוטומטי</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">כתובות</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">כרטיסי אשראי</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">אמצעי תשלום</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">שמירה ומילוי אוטומטי של כרטיסים</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">שמירה ומילוי אמצעי תשלום</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">הנתונים מוצפנים</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">‏%s מצפין את כל אמצעי התשלום השמורים</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">סנכרון כרטיסים בין מכשירים</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">סנכרון כרטיסים</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">הוספת כרטיס אשראי</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">הוספת כרטיס</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ניהול כרטיסים שמורים</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">ניהול כרטיסים</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">הוספת כתובת</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">ניהול כתובות</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">שמירה ומילוי אוטומטי של כתובות</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">שמירה ומילוי כתובות</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">לכלול מידע כמו מספרים, כתובות דוא״ל וכתובות למשלוח</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">כולל מספרי טלפון וכתובות דוא״ל</string>
@@ -1958,8 +1941,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">מחיקת כרטיס</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">האם ברצונך למחוק את כרטיס האשראי הזה?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">למחוק את הכרטיס?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">מחיקה</string>
@@ -1973,24 +1954,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">כרטיסים שמורים</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">נא להכניס מספר כרטיס אשראי תקין</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">נא להכניס מספר כרטיס תקני</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">נא למלא שדה זה</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">הוספת שם</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">יש לבטל את הנעילה כדי להציג את הכרטיסים השמורים שלך</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">אבטחת כרטיסי האשראי שלך</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">אבטחת אמצעי התשלום השמורים שלך</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ניתן להגדיר תבנית נעילת מכשיר, קוד או ססמה כדי להגן על כרטיסי האשראי השמורים שלך מפני גורמים בלתי מהימנים שמחזיקים במכשיר שלך.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">ניתן להגדיר תבנית נעילת מכשיר, קוד או ססמה כדי להגן על אמצעי התשלום השמורים שלך מפני גורמים בלתי מהימנים שמחזיקים במכשיר שלך.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">להגדיר כעת</string>
@@ -1999,9 +1971,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">שחרור נעילת המכשיר שלך</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">יש לבטל את הנעילה כדי להשתמש בפרטי כרטיס האשראי השמור</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">יש לבטל את הנעילה כדי להשתמש באמצעי התשלום השמורים שלך</string>
<!-- Title of the "Add address" screen -->
@@ -2010,12 +1979,6 @@
<string name="addresses_edit_address">עריכת כתובת</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">ניהול כתובות</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">שם פרטי</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">שם אמצעי</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">שם משפחה</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">שם</string>
<!-- The header for the street address of an address -->
@@ -2040,9 +2003,6 @@
<string name="addressess_delete_address_button">מחיקת כתובת</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">האם ברצונך למחוק את כתובת זו?</string>
-
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">למחוק את הכתובת הזאת?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">מחיקה</string>
@@ -2141,49 +2101,29 @@
<string name="login_menu_delete_button">מחיקה</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">עריכה</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">האם ברצונך למחוק את כניסה זו?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">האם ברצונך למחוק ססמה זו?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">מחיקה</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">ביטול</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">אפשרויות כניסה</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">אפשרויות ססמה</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">שדה הטקסט הניתן לעריכה עבור כתובת האתר של הכניסה.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">שדה הטקסט הניתן לעריכה עבור כתובת האתר.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">שדה הטקסט הניתן לעריכה עבור שם המשתמש של הכניסה.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">שדה הטקסט הניתן לעריכה עבור שם המשתמש.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">שדה הטקסט הניתן לעריכה עבור הססמה של הכניסה.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">שדה הטקסט הניתן לעריכה עבור הססמה.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">שמירת השינויים של הכניסה.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">שמירת שינויים.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">עריכה</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">עריכת הססמה</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">הוספת כניסה חדשה</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">הוספת ססמה</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">נדרשת ססמה</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">נא להכניס ססמה</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">דרוש שם משתמש</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">נא להכניס שם משתמש</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">דרוש שם מארח</string>
@@ -2592,6 +2532,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">סגירת גיליון התרגומים</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">זמנית, חלק מההגדרות אינן זמינות.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">תרגומים</string>
@@ -2614,6 +2557,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">יש לבחור שפה כדי לנהל את ההעדפות של ״תמיד לתרגם״ ו״לעולם לא לתרגם״.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">לא ניתן היה לטעון שפות. נא לנסות שוב מאוחר יותר.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">להציע לתרגם (ברירת מחדלץ)</string>
@@ -2636,6 +2582,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">להסיר את %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">לא ניתן היה לטעון אתרים. נא לנסות שוב מאוחר יותר.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">למחוק את %1$s?</string>
@@ -2714,13 +2662,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">ניווט אחורה</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">פתיחת מגירת ניפוי השגיאות</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">כלי לשוניות</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">ספירת לשוניות</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">פעיל</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">פעיל</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">פעילים</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">לא פעיל</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2731,6 +2684,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">כלי ליצירת לשוניות</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">כמות הלשוניות ליצירה</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">שדה הטקסט ריק</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">נא להכניס מספרים שלמים חיוביים בלבד</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">נא להכניס מספר הגדול מאפס</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">חריגה ממספר הלשוניות המירבי (%1$s) שניתן ליצור בפעולה אחת</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">הוספה ללשוניות פעילות</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2747,11 +2710,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">הצהרת פרטיות</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">שליחה</string>
+ <string name="micro_survey_submit_button_label">שליחה</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">סגירה</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">סגירה</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">תודה על המשוב שלך!</string>
+ <string name="micro_survey_feedback_confirmation">תודה על המשוב שלך!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">מאוד מרוצה</string>
<!-- Option for likert scale -->
@@ -2763,6 +2726,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">מאוד לא מרוצה</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">פתיחת סקר</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">סגירת סקר</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">סגירה</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">כניסות</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-ja/strings.xml b/mobile/android/fenix/app/src/main/res/values-ja/strings.xml
index 5040b99f60..cad2df70fa 100644
--- a/mobile/android/fenix/app/src/main/res/values-ja/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-ja/strings.xml
@@ -51,12 +51,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">最近保存</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">最近保存</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">保存したブックマークをすべて表示します</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">保存したブックマークをすべて表示します</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">削除</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">削除</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">ブックマーク</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">すべてのブックマークを表示</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">削除</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s は Mozilla の製品です。</string>
@@ -147,8 +155,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">新しいプライベートタブ</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">パスワードのショートカット</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">パスワード</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">パスワードのショートカット</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -193,6 +203,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">アドオン</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">拡張機能</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">拡張機能を管理</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">拡張機能を探す</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">アカウント情報</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -211,18 +225,26 @@
<string name="browser_menu_open_in_regular_tab">通常タブで開く</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">ホーム画面に追加</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">ホーム画面に追加...</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">インストール</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">再同期</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">ページ内検索</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">ページ内を検索...</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">ページを翻訳</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">コレクションに保存...</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">コレクションに保存</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">共有</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">共有...</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">%1$s で開く</string>
@@ -252,9 +274,47 @@
<string name="browser_menu_customize_home_1">ホームページをカスタマイズ</string>
<!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
- <string name="browser_menu_sign_in" tools:ignore="UnusedResources">ログイン</string>
- <!-- Browser menu caption label for the "Sign in" browser menu item described in browser_menu_sign_in -->
- <string name="browser_menu_sign_in_caption" tools:ignore="UnusedResources">パスワード、タブなどを同期します</string>
+ <string name="browser_menu_sign_in">ログイン</string>
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">パスワード、タブなどを同期します</string>
+
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">ログインして Sync に戻る</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">同期を一時停止中</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">新しいプライベートタブ</string>
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">パスワード</string>
+
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">%1$s の新着情報</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">PC 版サイトに切り替える</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">ツール</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">保存</string>
+
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">このページをブックマーク</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">ブックマークを編集</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">PDF として保存...</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">リーダービューで開く</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">リーダービューを閉じる</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">ページを翻訳...</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s に翻訳しました</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">印刷...</string>
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
@@ -353,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox のプライバシー通知</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">詳細はプライバシー通知をご覧ください</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">私たちはあなたの安全を守りたいと願っています</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -565,6 +623,10 @@
<string name="preferences_account_sync_error">再接続して同期を再開</string>
<!-- Preference for language -->
<string name="preferences_language">言語</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">翻訳</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">翻訳</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">データの選択</string>
<!-- Preference for data collection -->
@@ -633,6 +695,17 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">許可されていません</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">必須</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">任意</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">すべてのサイトで許可する</string>
+
+ <!-- The subtitle for the allow for all sites preference toggle -->
+ <string name="addons_permissions_allow_for_all_sites_subtitle" tools:ignore="UnusedResources">この拡張機能を信頼する場合は、すべてのウェブサイトに対して権限を与えられます。</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
<string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">カスタムアドオンコレクション</string>
@@ -656,7 +729,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">以前表示したタブ</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">最近追加したブックマーク</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">最近追加したブックマーク</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">ブックマーク</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">最近訪れたサイト</string>
@@ -751,8 +826,6 @@
<string name="preferences_sync_history">表示履歴</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">ブックマーク</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">パスワード</string>
<!-- Preference for syncing tabs -->
@@ -779,8 +852,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%2$s %3$s 上の %1$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">クレジットカード情報</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">支払い方法</string>
<!-- Preference for syncing addresses -->
@@ -797,6 +868,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">%s からのタブ</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s のタブを %2$d 個閉じました</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">最近閉じたタブを表示</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">例外</string>
@@ -1736,12 +1815,8 @@
<string name="add_to_homescreen_description_2">このウェブサイトを端末のホーム画面に簡単な操作で追加できます。アプリのような感覚で素早くアクセスして閲覧しましょう。</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報とパスワード</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">パスワード</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報を保存する</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">パスワードを保存</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">保存するか確認する</string>
@@ -1757,46 +1832,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">端末上の他のアプリにユーザー名とパスワードを入力します。</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報を追加</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">パスワードを追加</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報を同期</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">パスワードを同期</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">端末間でログイン情報を同期します</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">端末間でパスワードを同期</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">保存されたログイン情報</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">保存されたパスワード</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">端末に保存または %s と同期したログイン情報がここに表示されます。</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">%s に保存または同期したパスワードがこのリストに表示されます。保存されたすべてのパスワードは暗号化されます。</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Sync についての詳細情報。</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Sync についての詳細情報</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">例外</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報が保存されないサイトがここに表示されます。</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s は、このリストに表示されているサイトのパスワードを保存しません。</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">これらのサイトではログイン情報が保存されません。</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s はこれらのサイトのパスワードを保存しません。</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">すべての例外を削除</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報を検索</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">パスワードを検索</string>
<!-- The header for the site that a login is for -->
@@ -1825,17 +1881,11 @@
<string name="saved_login_reveal_password">パスワードを表示</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">パスワードを隠す</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ロック解除して保存されたログイン情報を表示します</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">保存されたパスワードを表示するにはロック解除してください</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報とパスワードの保護</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">保存されたパスワードを保護してください</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">端末のロックパターンや PIN、パスワードを設定して、保存されたログイン情報とパスワードを他人の不正なアクセスから保護しましょう。</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">端末のロックパターンや PIN、パスワードを設定して、保存されたパスワードを他人の不正なアクセスから保護しましょう。</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">後で</string>
@@ -1853,8 +1903,6 @@
<string name="saved_logins_sort_strategy_alphabetically">名前 (昇順)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">最終使用日時</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報メニューの並べ替え</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">パスワードを並べ替えます</string>
@@ -1864,29 +1912,19 @@
<string name="preferences_autofill">自動入力</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">所在地フォーム</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">クレジットカード</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">支払い方法</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">カード情報を保存して自動入力する</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">支払い方法を保存して入力する</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">データは暗号化されています</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s は保存したすべての支払い方法を暗号化します</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">端末間でカード情報を同期する</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">クレジットカード情報を同期</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">クレジットカードを追加</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">カード情報を追加</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">保存したカードを管理</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">カード情報を管理</string>
<!-- Preference option for adding an address -->
@@ -1894,12 +1932,8 @@
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">アドレスの管理</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">アドレスを保存して自動入力する</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">住所を保存して入力する</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">カード番号、メールアドレス、配送先などの情報を含める</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">電話番号とメールアドレスを含みます</string>
@@ -1924,8 +1958,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">カードを削除</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">本当にこのクレジットカード情報を削除してもよろしいですか?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">カード情報を削除しますか?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">削除</string>
@@ -1939,25 +1971,16 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">保存したカード</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">有効なクレジットカード番号を入力してください</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">正しいカード番号を入力してください</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">このフィールドは入力必須です</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">名前を追加してください</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">保存されたカード情報を表示するにはロック解除してください</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">クレジットカード情報の保護</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">保存された支払い方法を保護してください</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">端末のロックパターンや PIN、パスワードを設定して、保存されたクレジットカード情報とパスワードを他人の不正なアクセスから保護しましょう。</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">端末のロックパターンや PIN、パスワードを設定して、保存された支払い方法を他人の不正なアクセスから保護しましょう。</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">今すぐ設定</string>
@@ -1966,9 +1989,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">端末のロック解除</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ロックを解除して保存したクレジットカード情報を使用します</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">保存された支払い方法を使用するにはロック解除してください</string>
<!-- Title of the "Add address" screen -->
@@ -1977,12 +1997,6 @@
<string name="addresses_edit_address">住所の編集</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">アドレスの管理</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">名</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">ミドルネーム</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">姓</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">氏名</string>
<!-- The header for the street address of an address -->
@@ -2009,8 +2023,6 @@
<string name="addressess_delete_address_button">アドレスを削除</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">本当にこの住所を削除してもよろしいですか?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">このアドレスを削除しますか?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">削除</string>
@@ -2108,8 +2120,6 @@
<string name="login_menu_delete_button">削除</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">編集</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">このログイン情報を削除してもよろしいですか?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">本当にこのパスワードを削除してもよろしいですか?</string>
<!-- Positive action of a dialog asking to delete -->
@@ -2117,41 +2127,23 @@
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">キャンセル</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">ログインオプション</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">パスワードのオプション</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報のウェブアドレスの編集可能なテキストフィールド。</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">ウェブサイトのアドレスの編集可能なテキストフィールド。</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報のユーザー名の編集可能なテキストフィールド。</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">ユーザー名の編集可能なテキストフィールド。</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ログイン情報のパスワードの編集可能なテキストフィールド。</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">パスワードの編集可能なテキストフィールド。</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">変更を保存してログインします。</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">変更を保存します。</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">編集</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">パスワードを編集</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">新しいログイン情報の追加</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">パスワードを追加</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">パスワードが必要です</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">パスワードを入力してください</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">ユーザー名は必須です</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">ユーザー名を入力してください</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">ホスト名は必須です</string>
@@ -2497,10 +2489,14 @@
<string name="translations_bottom_sheet_translate_from">翻訳元</string>
<!-- Label for the dropdown to select which language to translate to on the translations dialog. Usually the translate to language selected will be the user's preferred language. -->
<string name="translations_bottom_sheet_translate_to">翻訳先</string>
+ <!-- Label for the dropdown to select which language to translate from on the translations dialog when the page language is not supported. This selection is to allow the user to select another language, in case we automatically detected the page language incorrectly. -->
+ <string name="translations_bottom_sheet_translate_from_unsupported_language">別の翻訳元言語を試す</string>
<!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button">後で</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">元の言語で表示</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">翻訳されていない元のページが読み込まれました</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">完了</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2520,7 +2516,7 @@
<!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
<string name="translation_error_language_not_supported_warning_text">申し訳ありませんが、%1$s はまだサポートされていません。</string>
<!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
- <string name="translation_error_language_not_supported_learn_more">詳細情報</string>
+ <string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">詳細情報</string>
<!-- Snackbar title shown if the user closes the Translation Request dialogue and a translation is in progress. -->
<string name="translation_in_progress_snackbar">翻訳中…</string>
@@ -2535,7 +2531,9 @@
<!-- Translations options dialog -->
<!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
- <string name="translation_option_bottom_sheet_title">翻訳オプション</string>
+ <string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">翻訳オプション</string>
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title_heading">翻訳オプション</string>
<!-- Toggle switch label that allows a user to set the setting if they would like the browser to always offer or suggest translations when available. -->
<string name="translation_option_bottom_sheet_always_translate">常に翻訳機能を提供する</string>
<!-- Toggle switch label that allows a user to set if they would like a given language to automatically translate or not. The first parameter is the language name, for example, "Spanish". -->
@@ -2553,6 +2551,12 @@
<!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translation_option_bottom_sheet_about_translations">%1$s の翻訳機能について</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
+ <string name="translation_option_bottom_sheet_close_content_description">翻訳シートを閉じる</string>
+
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">一部の設定が一時的に利用できません。</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">翻訳</string>
@@ -2576,6 +2580,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">設定で「常に翻訳する」言語と「翻訳しない」言語を選択します。</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">言語を読み込めませんでした。後でもう一度ご確認ください。</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">翻訳を通知する (既定)</string>
@@ -2598,6 +2605,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s を削除します</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">サイトを読み込めませんでした。後でもう一度ご確認ください。</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s を削除しますか?</string>
@@ -2675,12 +2684,19 @@
<string name="debug_drawer_title">デバッグツール</string>
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">前のページへ戻ります</string>
+
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">デバッグパネルを開く</string>
+
+ <!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">タブツール</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">タブ数</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">使用中</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">使用中</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">使用中</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">休止中</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2691,10 +2707,63 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">タブ作成ツール</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">作成するタブの数</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">テキストフィールドが空です</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">正の整数を入力してください</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">0 より大きい数字を入力してください</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">1 回の操作で生成できるタブの上限 (%1$s 個) に達しました</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">使用中のタブに追加</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">休止中のタブに追加</string>
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">プライベートタブに追加</string>
+
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">続ける</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">このアンケートにご回答ください</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">プライバシー通知</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label">送信</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">閉じる</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation">フィードバックのご提供ありがとうございます。</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">とても満足</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">満足</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">どちらでもない</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">不満</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">非常に不満</string>
+
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">アンケートを開く</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">アンケートを閉じる</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">閉じる</string>
+
+ <!-- Debug drawer logins -->
+ <!-- The title of the Logins feature in the Debug Drawer. -->
+ <string name="debug_drawer_logins_title">ログイン情報</string>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">現在のドメイン: %s</string>
+ <!-- The label for a button to add a new fake login for the current domain in the Logins feature. -->
+ <string name="debug_drawer_logins_add_login_button">このドメインの疑似ログイン情報を追加</string>
+ <!-- Content description for delete button where parameter will be the username of the login -->
+ <string name="debug_drawer_logins_delete_login_button_content_description">ユーザー名 %s のログイン情報を削除します</string>
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-kab/strings.xml b/mobile/android/fenix/app/src/main/res/values-kab/strings.xml
index 65fa7f8a0c..0c17e45335 100644
--- a/mobile/android/fenix/app/src/main/res/values-kab/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-kab/strings.xml
@@ -51,12 +51,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Yettwasekles melmi kan</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Yettwasekles melmi kan</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Sken akk ticraḍ n yisebtar yettwaskelsen</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Sken akk ticraḍ n yisebtar yettwaskelsen</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Kkes</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Kkes</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Ticraḍ n yisebtar</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Sken akk ticraḍ n yisebtar</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Kkes</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s d afares n Mozilla.</string>
@@ -196,6 +204,8 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Izegrar</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Isiɣzaf</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Sefrek isiɣzaf</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Talut n umiḍan</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -220,12 +230,18 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="resync_button_content_description">Ales amtawi</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Nadi deg usebter</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Nadi deg usebter…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Suqel asebter</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Sekles deg tegrumma…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Sekles ɣer tegrumma</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Bḍu</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Bḍu…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Ldi di %1$s</string>
@@ -257,6 +273,10 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="browser_menu_sign_in">Kcem</string>
<!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
<string name="browser_menu_sign_in_caption">Mtawi awalen n uεeddi, accaren akked wayen niḍen</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Ales qqen i wakken ad tesnekreḍ amtawi</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Amtawa yeḥbes</string>
<!-- Browser menu label that creates a private tab -->
<string name="browser_menu_new_private_tab">Iccer uslig amaynut</string>
<!-- Browser menu label that navigates to the Password screen -->
@@ -265,6 +285,28 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
The first parameter is the name of the app defined in app_name (for example: Fenix)-->
<string name="browser_menu_new_in_firefox">Amaynut deg %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Ddu ɣer usmel n tnarit</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Ifecka</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Sekles</string>
+
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Creḍ asebter-a</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Ẓreg tacreḍt n usebter</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Kles d PDF…</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Suqel asebter…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Suqqel ɣer %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Siggez…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Ulac isiɣzaf dagi</string>
@@ -280,6 +322,11 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Content description for the translate page toolbar button that opens the translations dialog when no translation has occurred. -->
<string name="browser_toolbar_translate">Suqel asebter</string>
+ <!-- Content description (not visible, for screen readers etc.) for the translate page toolbar button that opens the translations dialog when the page is translated successfully.
+ The first parameter is the name of the language that is displayed in the original page. (For example: English)
+ The second parameter is the name of the language which the page was translated to. (For example: French) -->
+ <string name="browser_toolbar_translated_successfully">Asebter yettwasuqqel seg %1$s ɣer %2$s.</string>
+
<!-- Locale Settings Fragment -->
<!-- Content description for tick mark on selected language -->
<string name="a11y_selected_locale_content_description">Fren tutlayt</string>
@@ -358,8 +405,6 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Tasertit tabaḍnit n Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Issin ugar deg tsertit-nneɣ n tbaḍnit</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Nḥemmel ad teqqimeḍ d aɣellsan</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
@@ -550,6 +595,10 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="preferences_account_sync_error">Ales tuqqna akken ad ikemmel umtawi</string>
<!-- Preference for language -->
<string name="preferences_language">Tutlayt</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Tasuqilt</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Tisuqilin</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Afran n yisefka</string>
<!-- Preference for data collection -->
@@ -604,6 +653,8 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Preference for add_ons -->
<string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">Izegrar</string>
+ <!-- Preference for extensions -->
+ <string name="preferences_extensions">Isiɣzaf</string>
<!-- Preference for installing a local add-on -->
<string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Sebded azegrir seg ufaylu</string>
<!-- Preference for installing a local extension -->
@@ -621,10 +672,9 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Yettawsra</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Afrayan</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Γeṛ syen tesnefleḍ isefka n usmel web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Kkes asmel web</string>
+
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Sireg meṛṛa ismal</string>
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
@@ -645,7 +695,9 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Uɣal ɣer deffir</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Ticraḍ n yisebtar n melmi kan</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Ticraḍ n yisebtar n melmi kan</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Ticraḍ n yisebtar</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Yemmẓer melmi kan</string>
@@ -697,18 +749,27 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Add-ons general availability nimbus message-->
<!-- Title of the Nimbus message for add-ons general availability-->
<string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">Izegrar imaynuten llan tura</string>
+ <!-- Title of the Nimbus message for extension general availability-->
+ <string name="addon_ga_message_title_2" tools:ignore="UnusedResources">Llan akka tura isiɣzaf imaynuten</string>
<!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
<string name="addon_ga_message_body" tools:ignore="UnusedResources">Snirem ugar n 100 yisiɣzaf imaynuten ara ak·akem-yeǧǧen ad tsagneḍ Firefox.</string>
<!-- Button text of the Nimbus message for add-ons general availability. -->
<string name="addon_ga_message_button" moz:removedIn="126" tools:ignore="UnusedResources">Snirem izegrar</string>
+ <!-- Button text of the Nimbus message for extensions general availability. -->
+ <string name="addon_ga_message_button_2" tools:ignore="UnusedResources">Snirem isiɣzaf</string>
+
<!-- Extension process crash dialog to user -->
<!-- Title of a dialog shown to the user when enough errors have occurred with addons and they need to be temporarily disabled -->
<string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">Azegrir yensa i kra n wakud</string>
+ <!-- Title of the extension crash dialog shown to the user when enough errors have occurred with extensions and they need to be temporarily disabled -->
+ <string name="extension_process_crash_dialog_title">Isiɣzaf nsan i kra n wakud</string>
<!-- The first parameter is the application name. This is a message shown to the user when too many errors have occurred with the addons process and they have been disabled. The user can decide if they would like to continue trying to start add-ons or if they'd rather continue without them. -->
<string name="addon_process_crash_dialog_message" moz:removedIn="126" tools:ignore="UnusedResources">Yiwen neɣ ugar n yizegrar ḥebsen, rran anagraw-ik d arurkid. %1$s ur yessaweḍ ara ad yales asenker n uzegrir(yizegrar).\n\nIzegrar ugin ad alsen tanekra ɣef teɣzi n tiɣimit-a.\n\Kkes neɣ sens izegrar-a, ahat ad yefru wugur-a.</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
<string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Ɛreḍ asenker n uzegrir</string>
+ <!-- Button text on the extension crash dialog to prompt the user to try restarting the extensions but the dialog will reappear if it is unsuccessful again -->
+ <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Ԑreḍ allus n usenker n yisiɣzaf</string>
<!-- The user will continue with all add-ons disabled -->
<string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Kemml s uzegrir yensa</string>
@@ -725,8 +786,6 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="preferences_sync_history">Azray</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Ticraḍ n yisebtar</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inekcam</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Awalen uffiren</string>
<!-- Preference for syncing tabs -->
@@ -754,8 +813,6 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
and the third is the device model. -->
<string name="default_device_name_2">%1$s deg %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tikarḍiwin n usmad</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Tarrayin n uxelleṣ</string>
<!-- Preference for syncing addresses -->
@@ -1709,12 +1766,8 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="add_to_homescreen_description_2">Tzemreḍ s sshal ad ternuḍ asmel-a web ɣer ugdil agejdan n yibenk-inek·inem i wakken ad tesɛuḍ anekcum askudan d tunigin taruradt s termt i icuban asnas.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Inekcam d wawalen uffiren</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Awalen uffiren</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sekles inekcam d wawalen uffiren</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Sekles awalen uffiren</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Suter asekles</string>
@@ -1730,38 +1783,19 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Ččar ismawen n useqdac d wawalen uffiren deg yisnasen-nniḍen ɣef yibenk-ik·im.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Rnu anekcum</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Rnu awal uffir</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Mtawi inekcam</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Mtawi awalen uffiren</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Mtawi inekcam gqr yibenkan</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inekcam yettwakelsen</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Awalen uffiren yettwakelsen</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Anekcum i tḥerzeḍ ɣer %s ad d-ittwasken da.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Issin ugar ɣef umtawi.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Issin ugar ɣef umtawi</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Tisuraf</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Inekcam akked wawalen uffiren ur yettwaskelsen ara ad ttwaseknen dagi.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Inekcam akked wawalen uffiren ur ttwaseklasen ara i yismal-a.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Kkes akk tisuraf</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Nadi inekcam</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Nadi awalen uffiren</string>
<!-- The header for the site that a login is for -->
@@ -1790,14 +1824,8 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="saved_login_reveal_password">Sken awal uffir</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Ffer awal uffir</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Serreḥ akken ad tsekneḍ inekcam-ik yettwaskelsen</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Mmesten inekcam d wawalen uffiren</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Seɣles awalen-ik·im uffiren i yettwaskelsen</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Sbadu azenziɣ n usekkeṛ, tangal PIN, neɣ awal uffir akken ad temmesteneḍ inekcam-ik akked wawlen-ik uffiren yettwaskelsen ticki yella win ikecmen ɣer yibenk-ik.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Ticki</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
@@ -1815,44 +1843,34 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Aseqdec aneggaru</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Umuɣ n usemyizwer n yinekcam</string>
+ <!-- Content description (not visible, for screen readers etc.) -->
+ <string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Umuɣ n usmizwer n wawalen n uεeddi</string>
<!-- Autofill -->
<!-- Preference and title for managing the autofill settings -->
<string name="preferences_autofill">Taččart tawurmant</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Tansiwin</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Tikarḍiwin n usmad</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Tarrayin n uxelleṣ</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Asekles d taččart tawurmant n tkarḍiwin</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Isefka ttwawgelhen</string>
+ <string name="preferences_credit_cards_save_and_autofill_cards_2">Sekles syen ččar tarrayin n uxelleṣ</string>
+ <!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
+ <string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s yettewgellih akk tarrayin n uxelleṣ i teskelseḍ</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Mtawi tikarḍiwin gar yibenkan</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Mtawi tikarḍiwin</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Rnu takarḍa n usmad</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Rnu takarḍa</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Sefrek tikerḍiwin yettwaskelsen</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Sefrek tikarḍiwin</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Rnu tansa</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Sefrek tansiwin</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Asekles d taččart tawurmant n tansiwin</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Sekles; teččareḍ tansiwin</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Seddu talɣut am wuṭṭunen, imayl akked tansiwin n usiweḍ</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Seddu ula uṭṭunen n tiliɣri d tansiwin n yimayl</string>
@@ -1876,8 +1894,6 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Kkes takarḍa</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Tebɣiḍ s tidet ad tekkseḍ takarḍa-a n usmad?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Kkes takarḍa?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Kkes</string>
@@ -1890,42 +1906,31 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Tikerḍiwin yettwasekles</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ma ulac aɣilif sekcem uṭṭun ameɣtu n tkarḍa n usmad</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Sekcem uṭṭun n tkarḍa ameɣtu</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ttxil-k·m ččar urti-a</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Rnu isem</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Kkes asekkeṛ i wakken ad twaliḍ tikerḍiwin-ik·im yettwaskelsen</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Seɣles tikerḍiwin-ik·im n usmad</string>
+ <string name="credit_cards_warning_dialog_title_2">Seɣles tarrayin-ik n uxelleṣ i yettwaskelsen</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Sbadu taneɣruft n usekkeṛ n yibenk, tangalt PIN neq awal uffir i ummesten n tkerḍiwin-ik·im n usmad yettwaskelsen ticki yella win ikecmen ɣer yibenk-inek·inem.</string>
+ <string name="credit_cards_warning_dialog_message_3">Sbadu taneɣruft n usekkeṛ n yibenk, tangalt PIN neq awal uffir i ummesten n tarrayin-ik·im n usmad yettwaskelsen ticki yella win ikecmen ɣer yibenk-inek·inem.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Sbadu tura</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_later">Ticki</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Serreḥ i ibenk-inek·inem</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Kkes asekkeṛ i wakken ad tesqedceḍ talɣut n tkarḍa n usmad</string>
+ <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
+ <string name="credit_cards_biometric_prompt_unlock_message_2">Kkes asekkeṛ tarrayin-ik n uxelleṣ i yettwaskelsen</string>
<!-- Title of the "Add address" screen -->
<string name="addresses_add_address">Rnu tansa</string>
<!-- Title of the "Edit address" screen -->
<string name="addresses_edit_address">Ẓreg tansa</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Sefrek tansiwin</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Aɣara</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Isem alemmas</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Isem</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Isem</string>
<!-- The header for the street address of an address -->
@@ -1952,8 +1957,6 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="addressess_delete_address_button">Kkes tansa</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">D tidet tebɣiḍ ad tekkseḍ tansa-a?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Kkes tansa-a?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Kkes</string>
@@ -2053,41 +2056,29 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<string name="login_menu_delete_button">Kkes</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Ẓreg</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Tebɣiḍ ad tekseḍ anekcum-agi?</string>
+ <!-- Message in delete confirmation dialog for password -->
+ <string name="login_deletion_confirmation_2">D tidet tebɣiḍ ad tekkseḍ awal-a n uεeddi?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Kkes</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Sefsex</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Iɣewwaren n unekcum</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Tixtiṛiyin n wawal uffir</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Urti n uḍris yettusenfal i tansa n unekcum n web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Urti n uḍris yettusenfal i yisem n useqdac n unekcum.</string>
+ <!-- The editable text field for a website address. -->
+ <string name="saved_login_hostname_description_3">Urti n uḍris yettusenfal i tansa n usmel web.</string>
+ <!-- The editable text field for a username. -->
+ <string name="saved_login_username_description_3">Urti n uḍris yettusenfal i yisem n useqdac.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Urti n uḍris yettusenfal i wawal uffir n unekcum.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Sekles isenfaln unekcum.</string>
+ <string name="saved_login_password_description_2">Urti n uḍris yettusenfal i wawal n uεeddi.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Sekles isenfal.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Ẓreg</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Ẓreg awal uffir</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Rnu anekcum amaynut</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Rnu awal uffir</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Awal uffir yettusra</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Sekcem awal uffir</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Isem n useqdac yettwasra</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Sekcem isem n useqdac</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Asenneftaɣ yettwasra</string>
@@ -2510,7 +2501,7 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Amḍan n waccaren</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Urmid</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Urmid</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Insa</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2518,12 +2509,50 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- The total tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_total">Asemday</string>
+ <!-- The button text to add tabs to the active tab group in the tab creation tool. -->
+ <string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Rnu ɣer waccaren urmiden</string>
+ <!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
+ <string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">Rnu ɣer waccaren irurmiden</string>
+ <!-- The button text to add tabs to the private tab group in the tab creation tool. -->
+ <string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Rnu ɣer waccaren usligen</string>
+
<!-- Micro survey -->
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Kemmel</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Smed aḥedqis-a</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Tasertit n tbaḍnit</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label">Azen</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Mdel</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation">Tanemmirt ɣef tekti yinek!</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Yumer aṭas</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Y·Tumer</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_3" tools:ignore="UnusedResources">War tamawt</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Ur yumir ara</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Texseṛ-as akk nniya</string>
+
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Ldi aḥedqis</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Mdel aḥedqis</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Mdel</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Inekcam</string>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Taɣult-a: %s</string>
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-kk/strings.xml b/mobile/android/fenix/app/src/main/res/values-kk/strings.xml
index eec9afe73c..cb9da8fe5c 100644
--- a/mobile/android/fenix/app/src/main/res/values-kk/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-kk/strings.xml
@@ -198,6 +198,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Қосымшалар</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Кеңейтулер</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Кеңейтулерді басқару</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Көбірек кеңейтулерді табу</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Тіркелгі ақпараты</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -216,6 +220,8 @@
<string name="browser_menu_open_in_regular_tab">Қалыпты бетте ашу</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Үй экранына қосу</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Үй экранына қосу…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Орнату</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -227,9 +233,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Парақты аудару</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Жинаққа сақтау…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Жинаққа сақтау</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Бөлісу</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Бөлісу…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">%1$s көмегімен ашу</string>
@@ -282,6 +292,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Сақтау</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Бұл бетті бетбелгілерге қосу</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Бетбелгіні түзету</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">PDF ретінде сақтау…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Оқу көрінісін іске қосу</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Оқу көрінісін сөндіру</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Парақты аудару…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s тіліне аударылған</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Баспаға шығару…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Мұнда кеңейтулер жоқ</string>
@@ -379,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox жекелік ескертуі</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Біздің жекелік ескертуімізден көбірек біліңіз</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Біз сіздің қауіпсіздігіңізді қамтамасыз етуді жақсы көреміз</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -591,7 +617,9 @@
<!-- Preference for language -->
<string name="preferences_language">Тіл</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Аударма</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Аударма</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Аудармалар</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Деректер таңдауы</string>
<!-- Preference for data collection -->
@@ -663,10 +691,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Міндетті</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Міндетті емес</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Веб-сайт деректерін оқу және өзгерту</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Веб-сайтты өшіру</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Барлық сайттар үшін рұқсат ету</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -792,8 +816,6 @@
<string name="preferences_sync_history">Шолу тарихы</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Бетбелгілер</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиндер</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Парольдер</string>
<!-- Preference for syncing tabs -->
@@ -819,8 +841,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s, %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Несиелік карталар</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Төлем әдістері</string>
<!-- Preference for syncing addresses -->
@@ -836,6 +856,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">%s құрылғысынан бет</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s бет жабылды: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Жақында жабылған беттерді қарау</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Ережеден бөлек</string>
@@ -1762,12 +1790,8 @@
<string name="add_to_homescreen_description_2">Бұл веб-сайтты жылдам қатынау және қолданба тектес режимде жылдам шолу мақсатымен құрылғыңыздың үй бетіңізге қосуға болады.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиндер және парольдер</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Парольдер</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиндер және парольдерді сақтау</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Парольдерді сақтау</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Сақтау алдында сұрау</string>
@@ -1784,46 +1808,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Құрылғыңыздағы басқа қолданбаларда пайдаланушы аттары мен парольдерін толтыру.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Логинді қосу</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Парольді қосу</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиндерді синхрондау</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Парольдерді синхрондау</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиндерді құрылғылар арасында синхрондау</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Парольдерді құрылғылар арасында синхрондау</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Сақталған логиндер</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Сақталған парольдер</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Сіз %s ішінде сақтаған немесе синхрондаған логиндер осында көрсетіледі.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Сіз %s ішіне сақтаған немесе синхрондаған парольдер осында тізіліп көрсетіледі. Сіз сақтаған барлық парольдер шифрленген.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Синхрондау туралы көбірек біліңіз.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Синхрондау туралы көбірек біліңіз</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Ережеден бөлек</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Сақталмаған логиндер мен парольдер осында көрсетіледі.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s осы жерде тізімделген сайттар үшін парольдерді сақтамайтын болады.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Бұл сайттар үшін логиндер мен парольдер сақталмайды.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s бұл сайттар үшін парольдерді сақтамайтын болады.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Барлық ережеден тыс жағдайларды өшіру</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиндерден іздеу</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Парольдерді іздеу</string>
<!-- The header for the site that a login is for -->
@@ -1852,17 +1857,11 @@
<string name="saved_login_reveal_password">Парольді көрсету</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Парольді жасыру</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Сақталған логиндеріңізді көру үшін бұғаттауын ашыңыз</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Сақталған парольдеріңізді көру үшін бұғаттауын ашыңыз</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиндер және парольдерді қорғаңыз</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Сақталған парольдерді қорғаңыз</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Бөтен адам сіздің құрылғыңызда болса, одан сақталған логиндер мен парольдерді қорғау үшін құрылғының бұғаттау үлгісін, PIN-кодын немесе парольді орнатыңыз.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Бөтен адам сіздің құрылғыңызда болса, одан сақталған парольдеріңізді қорғау үшін құрылғының бұғаттау үлгісін, PIN-кодын немесе парольді орнатыңыз.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Кейінірек</string>
@@ -1879,8 +1878,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Аты (А-Я)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Соңғы қолданылған</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиндерді сұрыптау мәзірі</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Парольдерді сұрыптау мәзірі</string>
@@ -1890,41 +1887,27 @@
<string name="preferences_autofill">Автотолтыру</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Адрестер</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Несиелік карталар</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Төлем әдістері</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Карталарды сақтау және автотолтыру</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Төлем әдістерін сақтау және толтыру</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Деректер шифрленген</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s сіз сақтаған барлық төлем әдістерін шифрлейді</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Карталарды құрылғылар арасында синхрондау</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Карталарды синхрондау</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Несиелік картаны қосу</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Картаны қосу</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Сақталған карталарды басқару</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Карталарды басқару</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Адресті қосу</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Адрестерді басқару</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Адрестерді сақтау және автотолтыру</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Адрестерді сақтау және толтыру</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Нөмірлер, эл. пошта және жеткізу адрестері сияқты ақпаратты қосу</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Телефон нөмірлері мен электрондық пошта адрестерін қамтиды</string>
@@ -1948,8 +1931,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Картаны өшіру</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Бұл несие картасын өшіруді шынымен қалайсыз ба?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Картаны өшіру керек пе?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Өшіру</string>
@@ -1963,24 +1944,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Сақталған карталар</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Несиелік картаның жарамды нөмірін енгізіңіз</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Жарамды карта нөмірін енгізіңіз</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Бұл өрісті толтырыңыз</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Атын қосыңыз</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Сақталған карталарыңызды көру үшін бұғаттауын ашыңыз</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Несиелік карталарыңызды қорғаңыз</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Сақталған төлем әдістерін қорғаңыз</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Бөтен адам сіздің құрылғыңызда болса, одан сақталған несиелік карталарды қорғау үшін құрылғының бұғаттау үлгісін, PIN-кодын немесе парольді орнатыңыз.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Бөтен адам сіздің құрылғыңызда болса, одан сақталған төлем әдістерін қорғау үшін құрылғының бұғаттау үлгісін, PIN-кодын немесе парольді орнатыңыз.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Қазір баптау</string>
@@ -1989,9 +1961,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Құрылғының бұғаттауын ашыңыз</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Сақталған несиелік карта ақпаратын қолдану үшін бұғаттауын ашыңыз</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Сақталған төлем әдістерін қолдану үшін құлыптан босатыңыз</string>
<!-- Title of the "Add address" screen -->
@@ -2000,12 +1969,6 @@
<string name="addresses_edit_address">Адресті түзету</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Адрестерді басқару</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Аты</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Әкесінің аты</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Тегi</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Аты</string>
<!-- The header for the street address of an address -->
@@ -2033,8 +1996,6 @@
<string name="addressess_delete_address_button">Адресті өшіру</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Бұл адресті өшіруді шынымен қалайсыз ба?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Бұл адресті өшіру керек пе?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Өшіру</string>
@@ -2131,50 +2092,30 @@
<string name="login_menu_delete_button">Өшіру</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Түзету</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Бұл логинді өшіруді қалайсыз ба?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Бұл парольді өшіруді шынымен қалайсыз ба?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Өшіру</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Бас тарту</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Логин баптаулары</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Пароль опциялары</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиннің веб-адресі үшін түзетуге болатын мәтіндік өрісі.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Веб-сайт адресі үшін түзетуге болатын мәтіндік өрісі.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиннің пайдаланушы аты үшін түзетуге болатын мәтіндік өрісі.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Пайдаланушы аты үшін түзетуге болатын мәтіндік өрісі.</string>
- <!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Логиннің паролі үшін түзетуге болатын мәтіндік өрісі.</string>
<!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Пароль үшін түзетуге болатын мәтіндік өрісі.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Логин өзгерістерін сақтау.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Өзгерістерді сақтау.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Түзету</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Парольді түзету</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Жаңа логинді қосу</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Парольді қосу</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Пароль керек</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Парольді енгізіңіз</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Пайдаланушы аты керек</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Пайдаланушы атын енгізіңіз</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Хост атауы керек</string>
@@ -2524,6 +2465,8 @@
<string name="translations_bottom_sheet_negative_button">Қазір емес</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Түпнұсқаны көрсету</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Аударылмаған түпнұсқа бет жүктелді</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Дайын</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2582,6 +2525,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Аудармалар парағын жабу</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Кейбір баптаулар уақытша қолжетімсіз.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Аудармалар</string>
@@ -2604,6 +2550,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">&quot;әрқашан аудару&quot; және &quot;ешқашан аудармау&quot; баптауларды басқару үшін тілді таңдаңыз.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Тілдерді жүктеу мүмкін емес. Кейінірек қайта тексеріңіз.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Аударуды ұсыну (үнсіз келісім бойынша)</string>
@@ -2627,6 +2576,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s өшіру</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Сайттарды жүктеу мүмкін емес. Кейінірек қайта тексеріңіз.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s өшіру керек пе?</string>
@@ -2705,13 +2656,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Артқа өту</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Жөндеу сөресін ашу</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Беттер саймандары</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Беттер саны</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Белсенді</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Белсенді</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Белсенді</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Белсенді емес</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2722,6 +2678,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Беттерді жасау құралы</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Жасау үшін беттер саны</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Мәтін өрісі бос</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Тек оң сандарды енгізіңіз</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Нөлден үлкен санды енгізіңіз</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Беттер саны бір әрекетте жасауға болатын максималды санынан (%1$s) асты</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Белсенді беттерге қосу</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2738,11 +2704,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Жекелік ескертуі</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Жіберу</string>
+ <string name="micro_survey_submit_button_label">Жіберу</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Жабу</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Жабу</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Пікіріңізге рахмет!</string>
+ <string name="micro_survey_feedback_confirmation">Пікіріңізге рахмет!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Өте жақсы</string>
<!-- Option for likert scale -->
@@ -2754,6 +2720,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Өте нашар</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Сауалнаманы ашу</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Сауалнаманы жабу</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Жабу</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Логиндер</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-ko/strings.xml b/mobile/android/fenix/app/src/main/res/values-ko/strings.xml
index 3d14dbadd0..5da118bfc3 100644
--- a/mobile/android/fenix/app/src/main/res/values-ko/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-ko/strings.xml
@@ -205,6 +205,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">부가 기능</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">확장 기능</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">확장 기능 관리</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">더 많은 확장 기능 살펴보기</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">계정 정보</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -223,6 +227,8 @@
<string name="browser_menu_open_in_regular_tab">일반 탭에서 열기</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">홈 화면에 추가</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">홈 화면에 추가…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">설치</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -234,9 +240,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">페이지 번역</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">모음집에 저장…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">모음집에 저장</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">공유</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">공유…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">%1$s에서 열기</string>
@@ -291,6 +301,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">저장</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">이 페이지 북마크</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">북마크 편집</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">PDF로 저장…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">리더뷰 켜기</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">리더뷰 끄기</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">페이지 번역…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s 언어로 번역됨</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">인쇄…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">확장 기능 없음</string>
@@ -388,8 +416,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox 개인정보처리방침</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">개인정보 보호정책에서 자세히 알아보기</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">우리는 사용자를 안전하게 지키는 것을 좋아합니다</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -600,7 +626,9 @@
<!-- Preference for language -->
<string name="preferences_language">언어</string>
<!-- Preference for translation -->
- <string name="preferences_translation">번역</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">번역</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">번역</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">데이터 선택</string>
<!-- Preference for data collection -->
@@ -675,10 +703,6 @@
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">선택 사항</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">웹 사이트 데이터 읽기 및 변경</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">웹 사이트 삭제</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">모든 사이트에 허용</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -805,8 +829,6 @@
<string name="preferences_sync_history">기록</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">북마크</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">비밀번호</string>
<!-- Preference for syncing tabs -->
@@ -833,8 +855,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%2$s %3$s의 %1$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">신용 카드</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">결제 방법</string>
<!-- Preference for syncing addresses -->
@@ -851,6 +871,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">%s에서 온 탭</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s 탭 닫힘: %2$d개</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">최근에 닫은 탭 보기</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">예외 목록</string>
@@ -1813,12 +1841,8 @@
<string name="add_to_homescreen_description_2">이 웹 사이트를 기기의 홈 화면에 쉽게 추가하여 앱과 같은 경험을 통해 즉시 액세스하고 더 빠르게 탐색 할 수 있습니다.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인과 비밀번호</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">비밀번호</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인과 비밀번호 저장</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">비밀번호 저장</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">저장할지 묻기</string>
@@ -1834,46 +1858,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">기기의 다른 앱에서 사용자 이름과 비밀번호를 채웁니다.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인 추가</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">비밀번호 추가</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sync 로그인</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">비밀번호 동기화</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">기기 간에 로그인 동기화</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">기기 간에 비밀번호 동기화</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">저장된 로그인</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">저장된 비밀번호</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">%s에 저장하거나 동기화한 로그인이 여기에 표시됩니다.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">%s에 저장하거나 동기화한 비밀번호는 여기에 나열됩니다. 저장한 모든 비밀번호는 암호화됩니다.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Sync에 대해 더 알아보기.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">동기화에 대해 더 알아보기</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">예외 목록</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">저장되지 않은 로그인과 비밀번호가 여기에 표시됩니다.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s는 여기에 나열된 사이트의 비밀번호를 저장하지 않습니다.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">이 사이트에 대한 로그인과 비밀번호는 저장되지 않습니다.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s는 이 사이트의 비밀번호를 저장하지 않습니다.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">모든 예외 삭제</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인 검색</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">비밀번호 검색</string>
<!-- The header for the site that a login is for -->
@@ -1902,17 +1907,11 @@
<string name="saved_login_reveal_password">비밀번호 보이기</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">비밀번호 숨기기</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">저장된 로그인을 보려면 잠금 해제하세요</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">저장된 비밀번호를 보려면 잠금 해제하세요</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인과 비밀번호 보안</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">저장된 비밀번호를 보호하세요</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">다른 사람이 내 기기를 가지고 있는 경우, 저장된 로그인과 비밀번호에 접근하지 못하도록 기기 잠금 패턴, PIN 또는 비밀번호를 설정하세요.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">다른 사람이 내 기기를 가지고 있는 경우, 저장된 비밀번호에 접근하지 못하도록 기기 잠금 패턴, PIN 또는 비밀번호를 설정하세요.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">나중에</string>
@@ -1930,8 +1929,6 @@
<string name="saved_logins_sort_strategy_alphabetically">이름 (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">마지막 사용</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인 정렬 메뉴</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">비밀번호 정렬 메뉴</string>
@@ -1941,42 +1938,28 @@
<string name="preferences_autofill">자동 채우기</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">주소</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">신용 카드</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">결제 방법</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">카드 저장 및 자동 채우기</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">결제 방법 저장 및 채우기</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">데이터가 암호화됨</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s는 저장한 모든 결제 방법을 암호화합니다</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">기기 간에 카드 동기화</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">카드 동기화</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">신용 카드 추가</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">카드 추가</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">저장된 카드 관리</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">카드 관리</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">주소 추가</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">주소 관리</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">주소 저장 및 자동 채우기</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">주소 저장 및 채우기</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">숫자, 이메일 및 배송 주소와 같은 정보 포함</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">전화번호와 이메일 주소가 포함됩니다</string>
@@ -2001,8 +1984,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">카드 삭제</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">이 신용 카드를 삭제하시겠습니까?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">카드를 삭제하시겠습니까?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">삭제</string>
@@ -2016,24 +1997,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">저장된 카드</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">유효한 신용 카드 번호를 입력해 주세요</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">유효한 카드 번호를 입력하세요</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">이 항목을 입력하세요.</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">이름 추가</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">저장된 카드를 보려면 잠금 해제하세요</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">신용 카드 보안</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">저장된 결제 방법을 보호하세요</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">다른 사람이 내 기기를 가지고 있는 경우, 저장된 신용 카드에 접근하지 못하도록 기기 잠금 패턴, PIN 또는 비밀번호를 설정하세요.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">다른 사람이 내 기기를 가지고 있는 경우, 저장된 결제 방법에 접근하지 못하도록 기기 잠금 패턴, PIN 또는 비밀번호를 설정하세요.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">지금 설정</string>
@@ -2042,9 +2014,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">기기 잠금 해제</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">저장된 신용 카드 정보를 사용하려면 잠금 해제하세요</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">저장된 결제 방법을 사용하려면 잠금 해제하세요</string>
<!-- Title of the "Add address" screen -->
@@ -2053,12 +2022,6 @@
<string name="addresses_edit_address">주소 편집</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">주소 관리</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">이름</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">중간 이름</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">성</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">이름</string>
<!-- The header for the street address of an address -->
@@ -2085,8 +2048,6 @@
<string name="addressess_delete_address_button">주소 삭제</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">이 주소를 삭제하시겠습니까?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">이 주소를 삭제하시겠습니까?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">삭제</string>
@@ -2185,49 +2146,29 @@
<string name="login_menu_delete_button">삭제</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">편집</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">이 로그인을 삭제하시겠습니까?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">이 비밀번호를 삭제하시겠습니까?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">삭제</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">취소</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인 옵션</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">비밀번호 옵션</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인 웹 주소의 편집 가능한 텍스트 필드입니다.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">웹 사이트 주소에 대한 편집 가능한 텍스트 필드입니다.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인 사용자 이름의 편집 가능한 텍스트 필드입니다.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">사용자 이름에 대한 편집 가능한 텍스트 필드입니다.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">로그인 비밀번호의 편집 가능한 텍스트 필드입니다.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">비밀번호에 대한 편집 가능한 텍스트 필드입니다.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">변경 내용을 로그인에 저장.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">변경 내용 저장.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">편집</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">비밀번호 수정</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">새 로그인 추가</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">비밀번호 추가</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">비밀번호 필요</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">비밀번호 입력</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">사용자 이름은 필수입니다</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">사용자 이름 입력</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">호스트 이름은 필수입니다</string>
@@ -2636,6 +2577,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">번역 시트 닫기</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">일부 설정을 일시적으로 사용할 수 없습니다.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">번역</string>
@@ -2659,6 +2603,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">”항상 번역“ 및 ”번역 안 함“ 설정을 관리할 언어를 선택하세요</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">언어를 로드할 수 없습니다. 나중에 다시 확인해 주세요.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">번역 제안 (기본값)</string>
@@ -2682,6 +2629,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s 제거</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">사이트를 로드할 수 없습니다. 나중에 다시 확인해 주세요.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s 사이트를 삭제하시겠습니까?</string>
@@ -2761,13 +2710,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">뒤로</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">디버그 서랍 열기</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">탭 도구</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">탭 수</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">활성</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">활성</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">활성</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">비활성</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2778,6 +2732,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">탭 생성 도구</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">생성할 탭 수량</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">텍스트 필드가 비어 있음</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">양의 정수만 입력하세요</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">0보다 큰 숫자를 입력하세요</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">한 번의 작업으로 생성할 수 있는 최대 탭 수(%1$s)를 초과했음</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">활성 탭에 추가</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2794,12 +2758,12 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">개인정보처리방침</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">보내기</string>
+ <string name="micro_survey_submit_button_label">보내기</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">닫기</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">닫기</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">의견을 보내 주셔서 감사합니다!</string>
+ <string name="micro_survey_feedback_confirmation">의견을 보내 주셔서 감사합니다!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">매우 만족</string>
<!-- Option for likert scale -->
@@ -2811,6 +2775,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">매우 불만족</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">설문조사 열기</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">설문조사 닫기</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">닫기</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">로그인</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-nb-rNO/strings.xml b/mobile/android/fenix/app/src/main/res/values-nb-rNO/strings.xml
index 3479298722..d435330c22 100644
--- a/mobile/android/fenix/app/src/main/res/values-nb-rNO/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-nb-rNO/strings.xml
@@ -48,12 +48,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Nylig lagret</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Nylig lagret</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Vis alle lagrede bokmerker</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Vis alle lagrede bokmerker</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Fjern</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Fjern</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Bokmerker</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Vis alle bokmerker</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Fjern</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s er produsert av Mozilla.</string>
@@ -191,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Tillegg</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Utvidelser</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Behandle utvidelser</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Oppdag flere utvidelser</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Kontoinformasjon</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -210,18 +222,26 @@
<string name="browser_menu_open_in_regular_tab">Åpne i vanlig fane</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Legg til på startskjermen</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Legg til på startskjermen…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installer</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Synkroniser på nytt</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Finn på siden</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Finn på siden…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Oversett siden</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Lagre i samling…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Lagre i samling</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Del</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Del…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Åpne i %1$s</string>
@@ -261,6 +281,34 @@
<!-- Browser menu label that navigates to the Password screen -->
<string name="browser_menu_passwords">Passord</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Nytt i %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Bytt til datamaskinversjon</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Verktøy</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Lagre</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Bokmerk denne siden</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Rediger bokmerke</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Lagre som PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Slå på leservisning</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Slå av leservisning</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Oversett siden…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Oversatt til %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Skriv ut…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Ingen utvidelser her</string>
@@ -358,8 +406,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox personvernerklæring</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Les mer i vår personvernerklæring</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Vi beskytter deg gjerne</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -566,6 +612,10 @@
<string name="preferences_account_sync_error">Koble til igjen for å fortsette synkroniseringen</string>
<!-- Preference for language -->
<string name="preferences_language">Språk</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Oversettelse</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Oversettelser</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Datavalg</string>
<!-- Preference for data collection -->
@@ -638,10 +688,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Nødvendig</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Valgfri</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Les og endre nettstedsdata</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Slett nettsted</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Tillat for alle nettsteder</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -671,7 +717,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Hopp inn igjen</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Nylige bokmerker</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Nylige bokmerker</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Bokmerker</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Nylig besøkt</string>
@@ -765,8 +813,6 @@
<string name="preferences_sync_history">Historikk</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Bokmerker</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Innlogginger</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Passord</string>
<!-- Preference for syncing tabs -->
@@ -793,8 +839,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s på %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Betalingskort</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Betalingsmåter</string>
<!-- Preference for syncing addresses -->
@@ -811,6 +855,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Fane fra %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s lukket %2$d faner</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Vis nylig lukkede faner</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Unntak</string>
@@ -1743,12 +1795,8 @@
<string name="add_to_homescreen_description_2">Du kan enkelt legge til dette nettstedet på enhetens startskjerm for å få øyeblikkelig tilgang og surfe raskere med en app-lignende opplevelse.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Innlogginger og passord</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Passord</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagre innlogginger og passord</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Lagre passord</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Spør om å lagre</string>
@@ -1764,47 +1812,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Fyll inn brukernavn og passord i andre apper på enheten din.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Legg til innlogging</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Legg til passord</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkroniser innlogginger</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synkroniser passord</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkroniser innlogginger på tvers av enheter</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synkroniser passord på tvers av enheter</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagrede innlogginger</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Lagrede passord</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">De innlogginger du lagrer eller synkroniserer til %s vil vises her.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Passordene du lagrer eller synkroniserer med %s vil bli oppført her. Alle passord du lagrer er kryptert.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Les mer om Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Les mer om synkronisering</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Unntak</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Innlogginger og passord som ikke er lagret vil vises her.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s vil ikke lagre passord for nettsteder som er oppført her.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Innlogginger og passord vil ikke bli lagret for disse nettstedene.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s vil ikke lagre passord for disse nettstedene.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Slett alle unntak</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Søk innlogginger</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Søk etter passord</string>
<!-- The header for the site that a login is for -->
@@ -1834,17 +1863,11 @@
<string name="saved_login_reveal_password">Vis passord</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Skjul passord</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lås opp for å se dine lagrede innlogginger</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Lås opp for å se dine lagrede passord</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Sikre dine innlogginger og passord</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Sikre dine lagrede passord</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Konfigurer en PIN-kode, et passord eller et låsemønster for å forhindre at andre mennesker får tilgang de lagrede innloggingene og passordene dine, hvis de har adgang til din enhet.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Konfigurer en PIN-kode, et passord eller et låsemønster for å beskytte dine lagrede passord om noen andre skulle få tak i enheten din.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Senere</string>
@@ -1864,9 +1887,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Sist brukt</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Sorter innlogginger-meny</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Sorter passord-menyen</string>
@@ -1875,41 +1895,27 @@
<string name="preferences_autofill">Autofyll</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresser</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Betalingskort</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Betalingsmåter</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagre og fyll ut kort automatisk</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Lagre og fyll inn betalingsmåter</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Data er kryptert</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s krypterer alle betalingsmåter du lagrer</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synkroniser kort på tvers av enheter</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synkroniser kort</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Legg til betalingskort</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Legg til kort</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Behandle lagrede kort</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Behandle kort</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Legg til adresse</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Behandle adresser</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagre og autoutfyll adresser</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Lagre og fyll ut adresser</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Inkluderer informasjon som telefonnummer, e-post og leveringsadresser</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Inkluderer telefonnumre og e-postadresser</string>
@@ -1933,8 +1939,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Slett kort</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på at du vil slette dette bankkortet?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Slett kort?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Slett</string>
@@ -1947,24 +1951,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Lagrede kort</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Oppgi et gyldig betalingskortnummer</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Skriv inn et gyldig kortnummer</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Fyll ut dette feltet</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Legg til et navn</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Lås opp for å se dine lagrede betalingskort</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Sikre dine betalingskort</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Sikre dine lagrede betalingsmåter</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Konfigurer en PIN-kode, et passord eller et låsemønster for å beskytte de lagrede betalingskortene dine om noen andre skulle få tak i enheten din.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Konfigurer en PIN-kode, et passord eller et låsemønster for å beskytte dine lagrede betalingsmåter om noen andre skulle få tak i enheten din.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Konfigurer nå</string>
@@ -1973,9 +1968,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Lås opp enheten din</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lås opp for å bruke lagret betalingskortinformasjon</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Lås opp for å bruke lagrede betalingsmåter</string>
<!-- Title of the "Add address" screen -->
@@ -1984,12 +1976,6 @@
<string name="addresses_edit_address">Rediger adresse</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Behandle adresser</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Fornavn</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Mellomnavn</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Etternavn</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Navn</string>
<!-- The header for the street address of an address -->
@@ -2016,8 +2002,6 @@
<string name="addressess_delete_address_button">Slett adresse</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på at du vil slette denne adressen?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Slette denne adressen?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Slett</string>
@@ -2117,49 +2101,29 @@
<string name="login_menu_delete_button">Slett</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Rediger</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på at du ønsker å slette denne innloggingen?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Er du sikker på at du ønsker å slette dette passordet?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Slett</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Avbryt</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Innloggingsalternativer</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Passordalternativer</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfeltet for innloggingens nettadresse.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Det redigerbare tekstfeltet for nettstedsadressen.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfeltet for innloggingens brukernavn.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Det redigerbare tekstfeltet for brukernavnet.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfeltet for innloggingens passord.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Det redigerbare tekstfeltet for passordet.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagre endringer for innlogging.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Lagre endringer.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Rediger</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Rediger passord</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Legg til ny innlogging</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Legg til passord</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Passord kreves</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Skriv inn et passord</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Brukernavn påkrevd</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Skriv inn et brukernavn</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Servernavn påkrevd</string>
@@ -2508,6 +2472,8 @@
<string name="translations_bottom_sheet_negative_button">Ikke nå</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Vis original</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Original uoversatt side lastet inn</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Ferdig</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2564,6 +2530,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Lukk oversettelsesarket</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Noen innstillinger er midlertidig utilgjengelige.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Oversettelser</string>
@@ -2588,6 +2557,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Velg et språk for å behandle innstillinger for «oversett alltid» og «oversett aldri».</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Kunne ikke laste inn språk. Prøv igjen senere.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Tilby å oversette (standard)</string>
@@ -2610,6 +2582,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Fjern %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Kunne ikke laste inn nettsteder. Prøv igjen senere.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Vil du slette %1$s?</string>
@@ -2687,13 +2661,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Naviger tilbake</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Åpne feilsøkingsskuffen</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Faneverktøy</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Antall faner</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktiv</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktiv</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktiv</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inaktiv</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2704,6 +2683,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Verktøy for å lage faner</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Antall faner som skal opprettes</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Tekstfeltet er tomt</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Angi bare positive heltall</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Skriv inn et tall større enn null</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Overskredet det maksimale antallet faner (%1$s) som kan genereres i én operasjon</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Legg til aktive faner</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2711,6 +2700,39 @@
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Legg til private faner</string>
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Fortsett</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Gjennomfør denne undersøkelsen</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Personvernbestemmelser</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label">Send</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Lukk</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation">Takk for tilbakemeldingen!</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Veldig fornøyd</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Fornøyd</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Nøytral</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Misfornøyd</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Veldig misfornøyd</string>
+
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Åpen undersøkelse</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Lukk undersøkelse</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Lukk</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Innlogginger</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-night/colors.xml b/mobile/android/fenix/app/src/main/res/values-night/colors.xml
index 2b7178b3d2..228a8df4af 100644
--- a/mobile/android/fenix/app/src/main/res/values-night/colors.xml
+++ b/mobile/android/fenix/app/src/main/res/values-night/colors.xml
@@ -26,11 +26,11 @@
<!-- Warning background -->
<color name="fx_mobile_layer_color_warning" tools:ignore="UnusedResources">@color/photonYellow70A77</color>
<!-- Confirmation background -->
- <color name="fx_mobile_layer_color_confirmation" tools:ignore="UnusedResources">@color/photonGreen80</color>
+ <color name="fx_mobile_layer_color_success" tools:ignore="UnusedResources">@color/photonGreen80</color>
<!-- Error background -->
- <color name="fx_mobile_layer_color_error" tools:ignore="UnusedResources">@color/photonPink80</color>
+ <color name="fx_mobile_layer_color_critical" tools:ignore="UnusedResources">@color/photonPink80</color>
<!-- Info background -->
- <color name="fx_mobile_layer_color_info" tools:ignore="UnusedResources">@color/photonBlue50A80</color>
+ <color name="fx_mobile_layer_color_information" tools:ignore="UnusedResources">@color/photonBlue50</color>
<!-- Search -->
<color name="fx_mobile_layer_color_search">@color/photonDarkGrey80</color>
@@ -40,7 +40,7 @@
<!-- Primary button in a disabled state-->
<color name="fx_mobile_action_color_primary_disabled" tools:ignore="UnusedResources">@color/photonViolet60A50</color>
<!-- Secondary button -->
- <color name="fx_mobile_action_color_secondary">@color/photonLightGrey30</color>
+ <color name="fx_mobile_action_color_secondary">@color/photonDarkGrey05</color>
<!-- Filter -->
<color name="fx_mobile_action_color_tertiary" tools:ignore="UnusedResources">@color/photonDarkGrey10</color>
<!-- Chip -->
@@ -48,11 +48,11 @@
<!-- Warning button -->
<color name="fx_mobile_action_color_warning" tools:ignore="UnusedResources">@color/photonYellow40A41</color>
<!-- Confirmation button -->
- <color name="fx_mobile_action_color_confirmation" tools:ignore="UnusedResources">@color/photonGreen70</color>
+ <color name="fx_mobile_action_color_success" tools:ignore="UnusedResources">@color/photonGreen70</color>
<!-- Error button -->
- <color name="fx_mobile_action_color_error" tools:ignore="UnusedResources">@color/photonPink70A69</color>
+ <color name="fx_mobile_action_color_critical" tools:ignore="UnusedResources">@color/photonPink70A69</color>
<!-- Info button -->
- <color name="fx_mobile_action_color_info" tools:ignore="UnusedResources">@color/photonBlue30</color>
+ <color name="fx_mobile_action_color_information" tools:ignore="UnusedResources">@color/photonBlue60</color>
<!-- Checkbox default, Radio button default -->
<color name="fx_mobile_action_color_form_default" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Checkbox selected, Radio button selected -->
@@ -78,9 +78,9 @@
<!-- Disabled text -->
<color name="fx_mobile_text_color_disabled">@color/photonLightGrey05A40</color>
<!-- Warning text -->
- <color name="fx_mobile_text_color_warning">@color/photonRed20</color>
+ <color name="fx_mobile_text_color_critical">@color/photonRed20</color>
<!-- Warning text on Secondary button -->
- <color name="fx_mobile_text_color_warning_button">@color/photonRed70</color>
+ <color name="fx_mobile_text_color_critical_button">@color/photonRed20</color>
<!-- Small heading, Text link -->
<color name="fx_mobile_text_color_accent">@color/photonViolet20</color>
<!-- Small heading, Text link -->
@@ -94,7 +94,7 @@
<!-- Action Primary disabled text -->
<color name="fx_mobile_text_color_action_primary_disabled" tools:ignore="UnusedResources">@color/photonLightGrey05A40</color>
<!-- Action Secondary text -->
- <color name="fx_mobile_text_color_action_secondary">@color/photonDarkGrey90</color>
+ <color name="fx_mobile_text_color_action_secondary">@color/photonLightGrey05</color>
<!-- Action Tertiary text -->
<color name="fx_mobile_text_color_action_tertiary" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Action Tertiary Active text -->
@@ -117,9 +117,9 @@
<color name="fx_mobile_icon_color_information">@color/photonBlue30</color>
<!-- Icon button -->
<color name="fx_mobile_icon_color_button" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
- <color name="fx_mobile_icon_color_warning" tools:ignore="UnusedResources">@color/photonRed20</color>
+ <color name="fx_mobile_icon_color_critical" tools:ignore="UnusedResources">@color/photonRed20</color>
<!-- Warning icon on Secondary button -->
- <color name="fx_mobile_icon_color_warning_button">@color/photonRed70</color>
+ <color name="fx_mobile_icon_color_critical_button">@color/photonRed20</color>
<color name="fx_mobile_icon_color_accent_violet">@color/photonViolet20</color>
<color name="fx_mobile_icon_color_accent_blue">@color/photonBlue20</color>
<color name="fx_mobile_icon_color_accent_pink">@color/photonPink20</color>
@@ -128,7 +128,7 @@
<!-- Action Primary Icon -->
<color name="fx_mobile_icon_color_action_primary" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Action Secondary Icon -->
- <color name="fx_mobile_icon_color_action_secondary">@color/photonDarkGrey90</color>
+ <color name="fx_mobile_icon_color_action_secondary">@color/photonLightGrey05</color>
<!-- Action Tertiary Icon -->
<color name="fx_mobile_icon_color_action_tertiary" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Reader, ETP Shield -->
@@ -149,7 +149,7 @@
<!-- Form parts -->
<color name="fx_mobile_border_color_disabled" tools:ignore="UnusedResources">@color/photonLightGrey05A40</color>
<!-- Form parts -->
- <color name="fx_mobile_border_color_warning" tools:ignore="UnusedResources">@color/photonRed40</color>
+ <color name="fx_mobile_border_color_critical" tools:ignore="UnusedResources">@color/photonRed20</color>
<!-- Toolbar divider -->
<color name="fx_mobile_border_color_toolbar_divider">@color/photonDarkGrey60</color>
diff --git a/mobile/android/fenix/app/src/main/res/values-nl/strings.xml b/mobile/android/fenix/app/src/main/res/values-nl/strings.xml
index 3277940ff0..8d3f1fd0b8 100644
--- a/mobile/android/fenix/app/src/main/res/values-nl/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-nl/strings.xml
@@ -204,6 +204,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Add-ons</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensies</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Extensies beheren</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Meer extensies ontdekken</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Accountinformatie</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -222,6 +226,8 @@
<string name="browser_menu_open_in_regular_tab">Openen in gewoon tabblad</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Toevoegen aan startscherm</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Toevoegen aan startscherm…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installeren</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -233,9 +239,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Pagina vertalen</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">In collectie opslaan…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">In collectie opslaan</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Delen</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Delen…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Openen in %1$s</string>
@@ -290,6 +300,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Opslaan</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Bladwijzer voor deze pagina maken</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Bladwijzer bewerken</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Opslaan als PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Lezerweergave inschakelen</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Lezerweergave uitschakelen</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Pagina vertalen…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Vertaald naar %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Afdrukken…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Geen extensies hier</string>
@@ -387,8 +415,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox-privacyverklaring</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Lees meer in onze privacyverklaring</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">We houden u graag veilig</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -596,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">Taal</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Vertaling</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Vertaling</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Vertalingen</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Gegevenskeuzes</string>
<!-- Preference for data collection -->
@@ -670,10 +698,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Vereist</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Optioneel</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Websitegegevens lezen en wijzigen</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Website verwijderen</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Toestaan voor alle websites</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -800,8 +824,6 @@
<string name="preferences_sync_history">Geschiedenis</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Bladwijzers</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmeldingen</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Wachtwoorden</string>
<!-- Preference for syncing tabs -->
@@ -828,8 +850,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s op %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Creditcards</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Betalingsmethoden</string>
<!-- Preference for syncing addresses -->
@@ -845,6 +865,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tabblad van %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s-tabbladen gesloten: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Onlangs gesloten tabbladen bekijken</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Uitzonderingen</string>
@@ -1777,12 +1805,8 @@
<string name="add_to_homescreen_description_2">U kunt deze website eenvoudig aan het startscherm van uw apparaat toevoegen, om zo direct toegang te hebben en sneller te navigeren met een app-achtige ervaring.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmeldingen en wachtwoorden</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Wachtwoorden</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmeldingen en wachtwoorden opslaan</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Wachtwoorden opslaan</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Vragen om op te slaan</string>
@@ -1797,46 +1821,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Gebruikersnamen en wachtwoorden in andere apps op uw apparaat invullen.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmelding toevoegen</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Wachtwoord toevoegen</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmeldingen synchroniseren</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Wachtwoorden synchroniseren</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmeldingen op apparaten synchroniseren</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Wachtwoorden synchroniseren tussen apparaten</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Opgeslagen aanmeldingen</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Opgeslagen wachtwoorden</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">De aanmeldingen die u opslaat of synchroniseert met %s worden hier getoond.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">De wachtwoorden die u opslaat of synchroniseert met %s zullen hier worden vermeld. Alle wachtwoorden die u opslaat, zijn versleuteld.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Meer info over Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Meer info over synchronisatie</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Uitzonderingen</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Niet-opgeslagen aanmeldingen en wachtwoorden worden hier weergegeven.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s zal geen wachtwoorden voor de hier vermelde websites opslaan.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmeldingen en wachtwoorden worden voor deze websites niet opgeslagen.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s zal geen wachtwoorden voor deze websites opslaan.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Alle uitzonderingen verwijderen</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmeldingen zoeken</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Wachtwoorden zoeken</string>
<!-- The header for the site that a login is for -->
@@ -1865,17 +1870,11 @@
<string name="saved_login_reveal_password">Wachtwoord tonen</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Wachtwoord verbergen</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ontgrendel om uw opgeslagen aanmeldingen te bekijken</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Ontgrendel om uw opgeslagen wachtwoorden te bekijken</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Beveilig uw aanmeldingen en wachtwoorden</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Beveilig uw opgeslagen wachtwoorden</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Stel een vergrendelingspatroon, pincode of wachtwoord voor uw apparaat in om uw opgeslagen aanmeldingen en wachtwoorden te beschermen tegen toegang als iemand anders uw apparaat heeft.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Stel een vergrendelingspatroon, pincode of wachtwoord voor uw apparaat in om uw opgeslagen wachtwoorden te beschermen tegen toegang als iemand anders uw apparaat heeft.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Later</string>
@@ -1892,8 +1891,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Naam (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Laatst gebruikt</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Menu Aanmeldingen sorteren</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Wachtwoordmenu sorteren</string>
@@ -1903,41 +1900,27 @@
<string name="preferences_autofill">Automatisch invullen</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adressen</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Creditcards</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Betalingsmethoden</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kaarten opslaan en automatisch invullen</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Betalingsmethoden opslaan en invullen</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Gegevens zijn versleuteld</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s versleutelt alle betalingsmethoden die u opslaat</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Kaarten synchroniseren tussen apparaten</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Kaarten synchroniseren</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Creditcard toevoegen</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Kaart toevoegen</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Opgeslagen kaarten beheren</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Kaarten beheren</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Adres toevoegen</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Adressen beheren</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Adressen opslaan en automatisch invullen</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Adressen opslaan en invullen</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Informatie zoals nummers, e-mail- en verzendadressen toevoegen</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Inclusief telefoonnummers en e-mailadressen</string>
@@ -1961,8 +1944,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Kaart verwijderen</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Weet u zeker dat u deze creditcard wilt verwijderen?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Kaart verwijderen?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Verwijderen</string>
@@ -1976,24 +1957,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Opgeslagen kaarten</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Voer een geldig creditcardnummer in</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Voer een geldig kaartnummer in</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Vul dit veld in</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Voeg een naam toe</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Ontgrendel om uw opgeslagen kaarten te bekijken</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Beveilig uw creditcards</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Beveilig uw opgeslagen betalingsmethoden</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Stel een vergrendelingspatroon, pincode of wachtwoord voor uw apparaat in om uw opgeslagen creditcards te beschermen tegen toegang als iemand anders uw apparaat heeft.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Stel een vergrendelingspatroon, pincode of wachtwoord voor uw apparaat in om uw opgeslagen betalingsmethoden te beschermen tegen toegang als iemand anders uw apparaat heeft.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Nu instellen</string>
@@ -2002,9 +1974,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Ontgrendel uw apparaat</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ontgrendelen om opgeslagen creditcardgegevens te gebruiken</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Ontgrendel om opgeslagen betalingsmethoden te gebruiken</string>
<!-- Title of the "Add address" screen -->
@@ -2013,12 +1982,6 @@
<string name="addresses_edit_address">Adres bewerken</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Adressen beheren</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Voornaam</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Tweede naam</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Achternaam</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Naam</string>
<!-- The header for the street address of an address -->
@@ -2045,8 +2008,6 @@
<string name="addressess_delete_address_button">Adres verwijderen</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Weet u zeker dat u dit adres wilt verwijderen?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Dit adres verwijderen?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Verwijderen</string>
@@ -2144,49 +2105,29 @@
<string name="login_menu_delete_button">Verwijderen</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Bewerken</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Weet u zeker dat u deze aanmelding wilt verwijderen?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Weet u zeker dat u dit wachtwoord wilt verwijderen?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Verwijderen</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Annuleren</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Aanmeldopties</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Wachtwoordopties</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Het bewerkbare tekstveld voor het webadres van de aanmelding.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Het bewerkbare tekstveld voor het websiteadres.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Het bewerkbare tekstveld voor de gebruikersnaam van de aanmelding.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Het bewerkbare tekstveld voor de gebruikersnaam.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Het bewerkbare tekstveld voor het wachtwoord van de aanmelding.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Het bewerkbare tekstveld voor het wachtwoord.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Wijzigingen aan aanmelding opslaan.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Wijzigingen opslaan.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Bewerken</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Wachtwoord bewerken</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Nieuwe aanmelding toevoegen</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Wachtwoord toevoegen</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Wachtwoord vereist</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Vul een wachtwoord in</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Gebruikersnaam vereist</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Vul een gebruikersnaam in</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Hostnaam vereist</string>
@@ -2537,6 +2478,8 @@
<string name="translations_bottom_sheet_negative_button">Niet nu</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Origineel tonen</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Oorspronkelijk onvertaalde pagina geladen</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Gereed</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2594,6 +2537,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Blad Vertalingen sluiten</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Sommige instellingen zijn tijdelijk niet beschikbaar.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Vertalingen</string>
@@ -2617,6 +2563,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Selecteer een taal om de voorkeuren ‘Altijd vertalen’ en ‘Nooit vertalen’ te beheren.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Kan talen niet laden. Probeer het later nog eens.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Aanbieden om te vertalen (standaard)</string>
@@ -2639,6 +2588,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s verwijderen</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Kan websites niet laden. Probeer het later nog eens.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s verwijderen?</string>
@@ -2716,13 +2667,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Terug bladeren</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Debuglade openen</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Tabbladhulpmiddelen</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Aantal tabbladen</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Actief</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Actief</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Actief</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactief</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2733,6 +2689,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Hulpmiddel voor het aanmaken van tabbladen</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Aantal aan te maken tabbladen</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Tekstveld is leeg</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Voer alleen positieve gehele getallen in</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Voer een getal groter dan nul in</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Het maximale aantal tabbladen (%1$s) dat in één bewerking kan worden aangemaakt is overschreden</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Toevoegen aan actieve tabbladen</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2749,11 +2715,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Privacyverklaring</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Indienen</string>
+ <string name="micro_survey_submit_button_label">Indienen</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Sluiten</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Sluiten</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Bedankt voor uw feedback!</string>
+ <string name="micro_survey_feedback_confirmation">Bedankt voor uw feedback!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Zeer tevreden</string>
<!-- Option for likert scale -->
@@ -2765,6 +2731,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Zeer ontevreden</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Enquête openen</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Enquête sluiten</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Sluiten</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Aanmeldingen</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-nn-rNO/strings.xml b/mobile/android/fenix/app/src/main/res/values-nn-rNO/strings.xml
index a85ae3472e..928e6f2594 100644
--- a/mobile/android/fenix/app/src/main/res/values-nn-rNO/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-nn-rNO/strings.xml
@@ -51,12 +51,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Nyleg lagra</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Nyleg lagra</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Vis alle lagra bokmerke</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Vis alle lagra bokmerke</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Fjern</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Fjern</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Bokmerke</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Vis alle bokmerke</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Fjern</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s er produsert av Mozilla.</string>
@@ -197,6 +205,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Tillegg</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Utvidingar</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Handsam utviding</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Oppdag fleire utvidingar</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Kontoinformasjon</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -215,18 +227,26 @@
<string name="browser_menu_open_in_regular_tab">Opne i vanlig fane</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Legg til på startskjermen</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Legg til på startskjermen…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installer</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Synkroniser på nytt</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Finn på sida</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Finn på sida…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Omset sida</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Lagre i samling…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Lagre i samling</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Del</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Del…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Opne i %1$s</string>
@@ -258,11 +278,44 @@
<!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
<string name="browser_menu_sign_in_caption">Synkroniser passord, faner, og meir</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Logg inn igjen for å synkronisere</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Synkronisering sett på pause</string>
<!-- Browser menu label that creates a private tab -->
<string name="browser_menu_new_private_tab">Ny privat fane</string>
<!-- Browser menu label that navigates to the Password screen -->
<string name="browser_menu_passwords">Passord</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Nytt i %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Byt til datamaskinversjon</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Verktøy</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Lagre</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Bokmerk denne sida</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Rediger bokmerke</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Lagre som PDF…</string>
+
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Slå på leservising</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Slå av leservising</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Omset sida…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Omset til %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Skriv ut…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Ingen utvidingar her</string>
@@ -359,10 +412,15 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox personvernerklæring</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Les meir i personvernerklæringa vår</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Vi vernar deg gjerne</string>
+ <!-- Title for set firefox as default browser screen used by Nimbus experiments.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_default_browser_title_nimbus_3" tools:ignore="UnusedResources">Finn ut kvifor millionar likar Firefox</string>
+ <!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_title_nimbus_4" tools:ignore="UnusedResources">Sikker surfing med fleire val</string>
+ <!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_description_nimbus_3">Den ideelle nettlesaren vår hindrar selskap i å spore aktiviteten din i hemmelegheit på nettet.</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_description_nimbus_4" tools:ignore="UnusedResources">Meir enn 100 millionar menneske beskyttar personvernet sitt ved å velje ein nettleser som er støtta av ein ideell organisasjon.</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
@@ -385,6 +443,12 @@
<string name="juno_onboarding_sign_in_positive_button" tools:ignore="UnusedResources">Logg inn</string>
<!-- Text for the button dismiss the screen and move on with the flow -->
<string name="juno_onboarding_sign_in_negative_button" tools:ignore="UnusedResources">Ikkje no</string>
+ <!-- Title for enable notification permission screen used by Nimbus experiments. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_enable_notifications_title_nimbus_2">Varsel gjer deg tryggare med Firefox</string>
+ <!-- Description for enable notification permission screen used by Nimbus experiments. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_enable_notifications_description_nimbus_2">Send faner trygt mellom einingane dine og oppdag andre personvernfunksjonar i Firefox.</string>
<!-- Text for the button to request notification permission on the device -->
<string name="juno_onboarding_enable_notifications_positive_button" tools:ignore="UnusedResources">Slå på varsel</string>
<!-- Text for the button dismiss the screen and move on with the flow -->
@@ -437,6 +501,8 @@
<string name="preferences_search_engines">Søkjemotorar</string>
<!-- Preference for settings related to Search engines suggestions-->
<string name="preferences_search_engines_suggestions">Forslag frå søkjemotorar</string>
+ <!-- Preference Category for settings related to Search address bar -->
+ <string name="preferences_settings_address_bar">Innstillingar for adresselinja</string>
<!-- Preference Category for settings to Firefox Suggest -->
<string name="preference_search_address_bar_fx_suggest">Adresselinje - Firefox forslag</string>
<!-- Preference link to Learn more about Firefox Suggest -->
@@ -553,6 +619,10 @@
<string name="preferences_account_sync_error">Kople til igjen for å halde fram synkroniseringa</string>
<!-- Preference for language -->
<string name="preferences_language">Språk</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Omsetting</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Omsettingar</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Dataval</string>
<!-- Preference for data collection -->
@@ -611,6 +681,8 @@
<string name="preferences_extensions">Utvidingar</string>
<!-- Preference for installing a local add-on -->
<string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Installer utviding frå fil</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">Installer utviding frå fil</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Varsel</string>
@@ -623,9 +695,18 @@
<!-- The title of the required permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Påkravd</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Valfri</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Tillat for alle nettstadar</string>
+ <!-- The subtitle for the allow for all sites preference toggle -->
+ <string name="addons_permissions_allow_for_all_sites_subtitle" tools:ignore="UnusedResources">Viss du stolar på denne utvidinga, kan du gje henne løyve på kvar nettstad.</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
<string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Tilpassa tilleggssamling</string>
+ <!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
+ <string name="preferences_customize_extension_collection">Tilpassa utvidings-samling</string>
<!-- Button caption to confirm the add-on collection configuration -->
<string name="customize_addon_collection_ok">OK</string>
<!-- Button caption to abort the add-on collection configuration -->
@@ -637,11 +718,16 @@
<!-- Toast shown after confirming the custom add-on collection configuration -->
<string name="toast_customize_addon_collection_done" moz:removedIn="126" tools:ignore="UnusedResources">Tilleggssamling endra. Avsluttar applikasjonen for å bruke endringar…</string>
+ <!-- Toast shown after confirming the custom extension collection configuration -->
+ <string name="toast_customize_extension_collection_done">Utvidingssamling endra. Avsluttar applikasjonen for å leggje til endringar…</string>
+
<!-- Customize Home -->
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Hopp inn igjen</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Nylege bokmerke</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Nylege bokmerke</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Bokmerke</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Nyleg besøkte</string>
@@ -693,22 +779,38 @@
<!-- Title of the Nimbus message for add-ons general availability-->
<string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">Nye utvidingar tilgjengelege no</string>
+ <!-- Title of the Nimbus message for extension general availability-->
+ <string name="addon_ga_message_title_2" tools:ignore="UnusedResources">Nye utvidingar tilgjengelege no</string>
<!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
<string name="addon_ga_message_body" tools:ignore="UnusedResources">Sjekk ut 100+ nye utvidingar som lèt deg gjere Firefox til din eigen.</string>
<!-- Button text of the Nimbus message for add-ons general availability. -->
<string name="addon_ga_message_button" moz:removedIn="126" tools:ignore="UnusedResources">Utforsk utvidingar</string>
+ <!-- Button text of the Nimbus message for extensions general availability. -->
+ <string name="addon_ga_message_button_2" tools:ignore="UnusedResources">Utforsk utvidingar</string>
+
<!-- Extension process crash dialog to user -->
<!-- Title of a dialog shown to the user when enough errors have occurred with addons and they need to be temporarily disabled -->
<string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">Tillegg er mellombels deaktivert</string>
+ <!-- Title of the extension crash dialog shown to the user when enough errors have occurred with extensions and they need to be temporarily disabled -->
+ <string name="extension_process_crash_dialog_title">Utvidinga er mellombels deaktivert</string>
<!-- The first parameter is the application name. This is a message shown to the user when too many errors have occurred with the addons process and they have been disabled. The user can decide if they would like to continue trying to start add-ons or if they'd rather continue without them. -->
<string name="addon_process_crash_dialog_message" moz:removedIn="126" tools:ignore="UnusedResources">Eitt eller fleire tillegg slutta å fungere, noko som gjorde systemet ditt ustabilt. %1$s prøvde utan hell å starte tillegget/tillegga på nytt.\n\nTillegg vil ikkje bli starta på nytt under gjeldande økt.\n\nDersom du fjernar eller deaktiverer tillegg, kan dette løyse problemet.</string>
+ <!-- This is a message shown to the user when too many errors have occurred with the extensions process and they have been disabled.
+ The user can decide if they would like to continue trying to start extensions or if they'd rather continue without them.
+ The first parameter is the application name. -->
+ <string name="extension_process_crash_dialog_message">Ei eller flere utvidingar slutta å fungere, noko som gjorde systemet ditt ustabilt. %1$s prøvde utan hell å starte utvidinga(ne) på nytt.\n\nUtvidingane vil ikkje bli starta på nytt under gjeldande økt.\n\nViss du fjernar eller deaktiverer utvidingar, kan dette løyse problemet.</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
<string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Prøv å starte tillegga på nytt</string>
+ <!-- Button text on the extension crash dialog to prompt the user to try restarting the extensions but the dialog will reappear if it is unsuccessful again -->
+ <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Prøv å starte utvidingar på nytt</string>
<!-- The user will continue with all add-ons disabled -->
<string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Hald fram med deaktiverte tillegg</string>
+ <!-- Button text on the extension crash dialog to prompt the user to continue with all extensions disabled. -->
+ <string name="extension_process_crash_dialog_disable_extensions_button_text">Hald fram med utvidingar deaktiverte</string>
+
<!-- Account Preferences -->
<!-- Preference for managing your account via accounts.firefox.com -->
<string name="preferences_manage_account">Handsam kontoen</string>
@@ -722,8 +824,6 @@
<string name="preferences_sync_history">Historikk</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Bokmerke</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Innloggingar</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Passord</string>
<!-- Preference for syncing tabs -->
@@ -750,8 +850,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s på %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Betalingskort</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Betalingsmåtar</string>
<!-- Preference for syncing addresses -->
@@ -767,6 +865,15 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Fane frå %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s lét att %2$d faner</string>
+
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Vis nyleg attlatne faner</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Unntak</string>
@@ -1347,6 +1454,8 @@
<!-- Text shown in the notification that pops up to remind the user that a private browsing session is active for Android 14+ -->
<string name="notification_erase_title_android_14">Late att private faner?</string>
+ <string name="notification_erase_text_android_14">Trykk eller sveip dette varselet for å late att private faner.</string>
+
<!-- Name of the marketing notification channel. Displayed in the "App notifications" system settings for the app -->
<string name="notification_marketing_channel_name">Marknadsføring</string>
@@ -1701,12 +1810,8 @@
<string name="add_to_homescreen_description_2">Du kan enkelt leggje til denne nettstaden på startskjermen til eininga for å, med ein gong, få tilgang og surfe raskare med ei app-liknande oppleving.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Innloggingar og passord</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Passord</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagre innloggingar og passord</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Lagre passord</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Spør om å lagre</string>
@@ -1723,40 +1828,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Fyll inn brukarnamn og passord i andre appar på eininga di.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Legg til innlogging</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Legg til passord</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkroniser innloggingar</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synkroniser passord</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkroniser innloggingar på tvers av einingar</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synkroniser passord på tvers av einingar</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagra innloggingar</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Lagra passord</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Innloggingane du lagrar eller synkroniserer til %s vil visast her.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Les meir om Sync.</string>
+ <string name="preferences_passwords_saved_logins_description_empty_text_2">Passorda du lagrar eller synkroniserer med %s vil bli oppførte her. Alle passorda du lagrar er krypterte.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Les meir om synkronisering</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Unntak</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Innloggingar og passord som ikkje er lagra vil visast her.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Innloggingar og passord vil ikkje bli lagra for desse nettstadane.</string>
+ <!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
+ <string name="preferences_passwords_exceptions_description_empty_2">%s vil ikkje lagre passord for nettstadar som er oppførte her.</string>
+ <!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
+ <string name="preferences_passwords_exceptions_description_2">%s vil ikkje lagre passord for desse nettstadane.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Slett alle unntak</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Søk innloggingar</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Søk etter passord</string>
<!-- The header for the site that a login is for -->
@@ -1786,12 +1878,12 @@
<string name="saved_login_reveal_password">Vis passord</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Gøym passord</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lås opp for å sjå dei lagra innloggingane dine</string>
+ <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
+ <string name="logins_biometric_prompt_message_2">Lås opp for å sjå dei lagra passorda dine</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Gjer innloggingane og passorda dine trygge</string>
+ <string name="logins_warning_dialog_title_2">Sikre dei lagra passorda dine</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lag ein PIN-kode, eit passord eller eit låsemønster for å hindre at andre får tilgang dei lagra innloggingane og passorda dine, dersom dei har tilgang til eininga di.</string>
+ <string name="logins_warning_dialog_message_2">Konfigurer ein PIN-kode, eit passord eller eit låsemønster for å beskytte dei lagra passorda dine om nokon andre skulle få tak i eininga di.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Seinare</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
@@ -1807,8 +1899,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Namn (A-Å)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Sist brukt</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Sorter inloggningsmenyen</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Sorter passord-menyen</string>
@@ -1818,27 +1908,19 @@
<string name="preferences_autofill">Autofyll</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresser</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Betalingskort</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Betalingsmåtar</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagre og fyll ut kort automatisk</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Lagre og fyll inn betalingsmåtar</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Data er kryptert</string>
+ <!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
+ <string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s krypterer alle betalingsmåtar du lagrar</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synkroniser kort på tvers av einingar</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synkroniser kort</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Legg til betalingskort</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Legg til kort</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Handsam lagra kort</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Handsam kort</string>
<!-- Preference option for adding an address -->
@@ -1846,12 +1928,8 @@
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Handsam adresser</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagre og fyll ut adresser automatisk</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Lagre og fyll ut adresser</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Inkluderer informasjon som telefonnummer, e-post og leveringsadresser</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Inkluderer telefonnummer og e-postadresser</string>
@@ -1875,8 +1953,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Slett kort</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på at du vil slette dette bankkortet?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Slette kort?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Slett</string>
@@ -1890,21 +1966,16 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Lagra bankkort</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Skriv inn eit gyldig betalingskortnummer</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Skriv inn eit gyldig kortnummer</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Fyll ut dette feltet</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Legg til eit namn</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Lås opp for å sjå lagra betalingskort</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Sikre betalingskorta dine</string>
+ <string name="credit_cards_warning_dialog_title_2">Sikre dei lagra betalingsmåtane dine</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Konfigurer eit låsemønster for eininga, PIN, eller passord, for å beskytte dei lagra betalingskorta dine om nokon andre skulle få tak i eininga di.</string>
+ <string name="credit_cards_warning_dialog_message_3">Konfigurer ein PIN-kode, eit passord eller eit låsemønster for å beskytte dei lagra betalingsmåtane dine om nokon annan skulle få tak i eininga di.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Konfigurer no</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
@@ -1912,21 +1983,14 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Lås opp eininga di</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lås opp for å bruke lagra betalingskortinformasjon</string>
-
+ <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
+ <string name="credit_cards_biometric_prompt_unlock_message_2">Lås opp for å bruke lagra betalingsmåtar</string>
<!-- Title of the "Add address" screen -->
<string name="addresses_add_address">Legg til adresse</string>
<!-- Title of the "Edit address" screen -->
<string name="addresses_edit_address">Rediger adresse</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Handsam adresser</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Fornamn</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Mellomnamn</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Etternamn</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Namn</string>
<!-- The header for the street address of an address -->
@@ -1952,8 +2016,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Slett adresse</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på at du vil slette denne adressa?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Slette denne adressa?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Slett</string>
@@ -2055,41 +2117,29 @@
<string name="login_menu_delete_button">Slett</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Rediger</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Er du sikker på at du ønskjer å slette denne innlogginga?</string>
+ <!-- Message in delete confirmation dialog for password -->
+ <string name="login_deletion_confirmation_2">Er du sikker på at du ønskjer å slette dette passordet?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Slett</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Avbryt</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Innloggingsalternativ</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Passordalternativ</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfeltet for innloggings-nettadressa.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfeltet for innloggings-brukarnamnet.</string>
+ <!-- The editable text field for a website address. -->
+ <string name="saved_login_hostname_description_3">Det redigerbare tekstfeltet for nettstadadressa.</string>
+ <!-- The editable text field for a username. -->
+ <string name="saved_login_username_description_3">Det redigerbare tekstfeltet for brukarnamnet.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbare tekstfeltet for innloggings-passordet.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Lagre endringar for innlogging.</string>
+ <string name="saved_login_password_description_2">Det redigerbare tekstfeltet for passordet.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Lagre endringar.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Rediger</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Rediger passord</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Legg til ny innlogging</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Legg til passord</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Passord påkravd</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Skriv inn passord</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Brukarnamn påkravd</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Skriv inn eit brukarnamn</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Vertsnamn påkravd</string>
@@ -2192,6 +2242,9 @@
<!-- Title for search suggestions when the default search suggestion engine is anything other than Google. The first parameter is default search engine name. -->
<string name="other_default_search_engine_suggestion_header">Søk med %s</string>
+ <!-- Default browser experiment -->
+ <!-- Default browser card title -->
+ <string name="default_browser_experiment_card_title">Endre standardnettlesar</string>
<!-- Default browser card text -->
<string name="default_browser_experiment_card_text">Vel at lenker frå nettstadar, e-postmeldingar og meldingar skal opnast automatisk i Firefox.</string>
@@ -2342,6 +2395,10 @@
<string name="review_quality_check_contextual_onboarding_learn_more">Med krafta i %1$s frå Mozilla hjelper vi deg med å unngå einsidige og ikkje-truverdige vurderingar. AI-modellen vår vert alltid forbetra for å beskytte deg når du handlar. %2$s</string>
<!-- Clickable text from the contextual onboarding card that links to review quality check support article. -->
<string name="review_quality_check_contextual_onboarding_learn_more_link">Les meir</string>
+ <!-- Caption text to be displayed in review quality check contextual onboarding card above the opt-in button. First parameter is Firefox app name, third parameter is the Fakespot product name. Second & fourth are for clickable texts defined in review_quality_check_contextual_onboarding_privacy_policy_3 and review_quality_check_contextual_onboarding_terms_use. -->
+ <string name="review_quality_check_contextual_onboarding_caption_3" moz:RemovedIn="124" tools:ignore="UnusedResources">Ved å velje «Ja, prøv det» godtek du %1$s sine %2$s og %3$s sine %4$s.</string>
+ <!-- Caption text to be displayed in review quality check contextual onboarding card above the opt-in button. First parameter is Firefox app name, third parameter is the Fakespot product name. Second & fourth are for clickable texts defined in review_quality_check_contextual_onboarding_privacy_policy_3 and review_quality_check_contextual_onboarding_terms_use. -->
+ <string name="review_quality_check_contextual_onboarding_caption_4">Ved å velje «Ja, prøv det» godtek du %1$s sine %2$s og %3$s sine %4$s.</string>
<!-- Clickable text from the review quality check contextual onboarding card that links to Fakespot privacy notice. -->
<string name="review_quality_check_contextual_onboarding_privacy_policy_3">peronvernerklæring</string>
<!-- Clickable text from the review quality check contextual onboarding card that links to Fakespot terms of use. -->
@@ -2413,16 +2470,28 @@
<!-- Translation request dialog -->
<!-- Title for the translation dialog that allows a user to translate the webpage. -->
<string name="translations_bottom_sheet_title">Omsetje denne sida?</string>
+ <!-- Title for the translation dialog after a translation was completed successfully.
+ The first parameter is the name of the language that the page was translated from, for example, "French".
+ The second parameter is the name of the language that the page was translated to, for example, "English". -->
+ <string name="translations_bottom_sheet_title_translation_completed">Sida er omsett frå %1$s til %2$s</string>
+ <!-- Title for the translation dialog that allows a user to translate the webpage when a user uses the translation feature the first time. The first parameter is the name of the application, for example, "Fenix". -->
+ <string name="translations_bottom_sheet_title_first_time">Prøv private omsettingar i %1$s</string>
+ <!-- Additional information on the translation dialog that appears when a user uses the translation feature the first time. The first parameter is clickable text with a link, for example, "Learn more". -->
+ <string name="translations_bottom_sheet_info_message">Av omsyn til personvernet ditt forlét aldri omsettingar eininga di. Nye språk og forbetringar kjem snart! %1$s</string>
<!-- Text that links to additional information about the Firefox translations feature. -->
<string name="translations_bottom_sheet_info_message_learn_more">Les meir</string>
<!-- Label for the dropdown to select which language to translate from on the translations dialog. Usually the translate from language selected will be the same as the page language. -->
<string name="translations_bottom_sheet_translate_from">Omset frå</string>
<!-- Label for the dropdown to select which language to translate to on the translations dialog. Usually the translate to language selected will be the user's preferred language. -->
<string name="translations_bottom_sheet_translate_to">Omset til</string>
+ <!-- Label for the dropdown to select which language to translate from on the translations dialog when the page language is not supported. This selection is to allow the user to select another language, in case we automatically detected the page language incorrectly. -->
+ <string name="translations_bottom_sheet_translate_from_unsupported_language">Prøv eit anna kjeldespråk</string>
<!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button">Ikkje no</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Vis original</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Original ikkje-omsett side lasta inn</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Ferdig</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2438,6 +2507,10 @@
<string name="translations_bottom_sheet_default_dropdown_selection">Vel eit språk</string>
<!-- The title of the warning card informs the user that a translation could not be completed. -->
<string name="translation_error_could_not_translate_warning_text">Det oppstod eit problem med å omsetje. Prøv på nytt.</string>
+ <!-- The title of the warning card informs the user that the list of languages cannot be loaded. -->
+ <string name="translation_error_could_not_load_languages_warning_text">Klarte ikkje å laste inn språk. Sjekk Internett-tilkoplinga di og prøv igjen.</string>
+ <!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
+ <string name="translation_error_language_not_supported_warning_text">Beklagar, vi stør ikkje %1$s enno.</string>
<!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
<string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">Les meir</string>
@@ -2445,9 +2518,18 @@
<string name="translation_in_progress_snackbar">Omset…</string>
+ <!-- Title for the data saving mode warning dialog used in the translation request dialog.
+ This dialog will be presented when the user attempts to perform
+ a translation without the necessary language files downloaded first when Android's data saver mode is enabled and the user is not using WiFi.
+ The first parameter is the size in kilobytes or megabytes of the language file. -->
+ <string name="translations_download_language_file_dialog_title">Last ned språk i datasparemodus (%1$s)?</string>
+
+
<!-- Translations options dialog -->
<!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
<string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">Innstillingar for omsetjing</string>
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title_heading">Innstillingar for omsetting</string>
<!-- Toggle switch label that allows a user to set the setting if they would like the browser to always offer or suggest translations when available. -->
<string name="translation_option_bottom_sheet_always_translate">Tilby alltid å omsetje</string>
<!-- Toggle switch label that allows a user to set if they would like a given language to automatically translate or not. The first parameter is the language name, for example, "Spanish". -->
@@ -2465,12 +2547,20 @@
<!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translation_option_bottom_sheet_about_translations">Om omsetjingar i %1$s</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
+ <string name="translation_option_bottom_sheet_close_content_description">Lat att omsettingsarket</string>
+
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Nokre innstillingar er mellombels utilgjengelege.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Omsetjingar</string>
<!-- Toggle switch label that indicates that the browser should signal or indicate when a translation is possible for any page. -->
<string name="translation_settings_offer_to_translate">Tilby å omsetje når det er muleg</string>
+ <!-- Toggle switch label that indicates that downloading files required for translating is permitted when using data saver mode in Android. -->
+ <string name="translation_settings_always_download">Last alltid ned språk i datasparemodus</string>
<!-- Section header text that begins the section of a list of different options the user may select to adjust their translation preferences. -->
<string name="translation_settings_translation_preference">Innstillingar for omsetjing</string>
<!-- Button text for the button that will take the user to the automatic translations settings dialog. On the automatic translations settings dialog, the user can set if translations should occur automatically for a given language. -->
@@ -2487,6 +2577,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Vel eit språk for å handsame innstillingar for «omset alltid» og «omset aldri».</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Klarte ikkje å laste inn språk. Prøv igjen seinare.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Tilby å omsetje (standard)</string>
@@ -2510,6 +2603,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Fjern %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Klarte ikkje å laste inn nettstadar. Prøv igjen seinare.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Vil du slette %1$s?</string>
@@ -2551,11 +2646,28 @@
The first parameter is the name of the language, for example, "Spanish" and the second parameter is the size in kilobytes or megabytes of the language file. -->
<string name="delete_language_file_dialog_title">Slett %1$s (%2$s)?</string>
+ <!-- Additional information for the dialog used by the translations feature to confirm deleting a language. The first parameter is the name of the application, for example, "Fenix". -->
+ <string name="delete_language_file_dialog_message">Viss du slettar dette språket, vil %1$s laste ned delar av språk til snøgglageret ditt medan du omset.</string>
+ <!-- Title for the dialog used by the translations feature to confirm deleting all languages file.
+ The dialog will be presented when the user requests deletion of all languages file.
+ The first parameter is the size in kilobytes or megabytes of the language file. -->
+ <string name="delete_language_all_languages_file_dialog_title">Slette alle språk (%1$s)?</string>
+ <!-- Additional information for the dialog used by the translations feature to confirm deleting all languages file. The first parameter is the name of the application, for example, "Fenix". -->
+ <string name="delete_language_all_languages_file_dialog_message">Viss du slettar alle språk, vil %1$s laste ned delar av språk tilsnøgglageret ditt medan du omset.</string>
<!-- Button text on the dialog used by the translations feature to confirm deleting a language. -->
<string name="delete_language_file_dialog_positive_button_text">Slett</string>
<!-- Button text on the dialog used by the translations feature to cancel deleting a language. -->
<string name="delete_language_file_dialog_negative_button_text">Avbryt</string>
+ <!-- Title for the data saving mode warning dialog used by the translations feature.
+ This dialog will be presented when the user attempts to download a language or perform
+ a translation without the necessary language files downloaded first when Android's data saver mode is enabled and the user is not using WiFi.
+ The first parameter is the size in kilobytes or megabytes of the language file.-->
+ <string name="download_language_file_dialog_title">Laste ned medan du er i datasparemodus (%1$s)?</string>
+ <!-- Additional information for the data saving mode warning dialog used by the translations feature. This text explains the reason a download is required for a translation. -->
+ <string name="download_language_file_dialog_message_all_languages">Vi lastar ned delvise språk til snøgglageret ditt for å halde omsettingar private.</string>
+ <!-- Additional information for the data saving mode warning dialog used by the translations feature. This text explains the reason a download is required for a translation without mentioning the cache. -->
+ <string name="download_language_file_dialog_message_all_languages_no_cache">Vi lastar ned delvise språk for å halde omsettingar private.</string>
<!-- Checkbox label text on the data saving mode warning dialog used by the translations feature. This checkbox allows users to ignore the data usage warnings. -->
<string name="download_language_file_dialog_checkbox_text">Last alltid ned i datasparemodus</string>
<!-- Button text on the data saving mode warning dialog used by the translations feature to allow users to confirm they wish to continue and download the language file. -->
@@ -2571,13 +2683,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Naviger tilbake</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Opne feilsøkingsskuffa</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Faneverktøy</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Antal faner</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Verksam</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Verksam</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktiv</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Uverksam</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2588,6 +2705,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Verktøy for å lage faner</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Tal på faner som skal opprettast</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Text field is empty</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Skriv inn berre positive heiltall</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Skriv inn eit tal større enn null</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Overskreid det maksimale talet på faner (%1$s) som kan genererast i éin operasjon</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Legg til i verksame faner</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2599,16 +2726,43 @@
<!-- The continue button label -->
<string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Hald fram</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Ver med i denne undersøkinga</string>
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Personvernerklæring</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Send inn</string>
+ <string name="micro_survey_submit_button_label">Send inn</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Lat att</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Lat att</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Takk for tilbakemeldinga di!</string>
+ <string name="micro_survey_feedback_confirmation">Takk for tilbakemeldinga di!</string>
+
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Veldig fornøgd</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Fornøgd</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Nøytral</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Misfornøgd</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Veldig misfornøgd</string>
+
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Opne undersøking</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Lat att undersøking</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Lat att</string>
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Innloggingar</string>
- </resources>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Gjeldande domene: %s</string>
+ <!-- The label for a button to add a new fake login for the current domain in the Logins feature. -->
+ <string name="debug_drawer_logins_add_login_button">Legg til ei falsk innlogging for dette domenet</string>
+ <!-- Content description for delete button where parameter will be the username of the login -->
+ <string name="debug_drawer_logins_delete_login_button_content_description">Slett innlogging med brukarnamn %s</string>
+</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-oc/strings.xml b/mobile/android/fenix/app/src/main/res/values-oc/strings.xml
index dadbc407db..93e80beb14 100644
--- a/mobile/android/fenix/app/src/main/res/values-oc/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-oc/strings.xml
@@ -48,12 +48,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Salvats recentament</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Salvats recentament</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Afichar totes los marcapaginas enregistrats</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Afichar totes los marcapaginas enregistrats</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Levar</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Levar</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Marcapaginas</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Afichar totes los marcapaginas</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Suprimir</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s es produch per Mozilla.</string>
@@ -191,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Moduls</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensions</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gerir las extensions</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Descobrir mai d’extensions</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informacion compte</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -209,18 +221,26 @@
<string name="browser_menu_open_in_regular_tab">Dobrir dins un onglet classic</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Apondre a l’ecran d’acuèlh</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Apondre a l’ecran d’acuèlh…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Tornar sincronizar</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Recercar dins la pagina</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Recercar dins la pagina…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traduire la pagina</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Salvar a la colleccion…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Salvar a la colleccion</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Partejar</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Partejar…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Dobrir amb %1$s</string>
@@ -262,6 +282,34 @@
<!-- Browser menu label that navigates to the Password screen -->
<string name="browser_menu_passwords">Senhals</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Novetats dins %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Passar en version ordenador</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Aisinas</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Enregistrar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Marcar aquesta pagina</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Modificar lo marcapagina</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Enregistrar en PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Passar a la vista lectura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Quitar lo mòde lectura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traduire la pagina…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traduch en %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimir…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Cap d’extension aquí</string>
@@ -358,8 +406,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Politica de confidencialitat de Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Ne saber mai tocant nòstra politica de confidencialitat</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Nos impòrta vòstra vida privada</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -570,6 +616,10 @@
<!-- Preference for language -->
<string name="preferences_language">Lenga</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Traduccion</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traduccions</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Donadas collectadas</string>
<!-- Preference for data collection -->
@@ -641,10 +691,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Requesida</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Facultativa</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Consultar e modificar las donadas de sites web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Suprimir lo site web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Autorizar per totes los sites</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -675,7 +721,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Tornar a aqueste onglet</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Marcats recentament</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Marcats recentament</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Marcapaginas</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Visitats fa res</string>
@@ -772,8 +820,6 @@
<string name="preferences_sync_history">Istoric</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marcapaginas</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Identificants</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Senhals</string>
@@ -802,8 +848,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s sus %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartas de crèdit</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Metòdes de pagament</string>
<!-- Preference for syncing addresses -->
@@ -819,6 +863,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Onglet de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%2$d onglets tampats de %1$s</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Veire los onglets tampats recentament</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Excepcions</string>
@@ -1767,12 +1819,8 @@
<string name="add_to_homescreen_description_2">Podètz facilament apondre aqueste site a l’ecran d’acuèlh de vòstre periferic per i accedir dirèctament e i navegar coma se foguèsse una aplicacion.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Identificants e senhals</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Senhals</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar los identificants e senhals</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Salvar senhals</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Demandar per salvar</string>
@@ -1789,47 +1837,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Emplena los noms d’utilizaires e los senhals d’autres aplicacions sus vòstre periferic.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Apondre un identificant</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Apondre un senhal</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar los identificants</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizar los senhals</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar los identificants entre totes los periferics</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronizar los senhals entre los periferics</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Identificants salvats</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Senhals salvats</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Aquí se mòstran los identificants que salvatz o sincronizatz amb %s.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Los senhals que salvatz o sincronizatz amb %s seràn listats aquí. Totes los senhals qu’enregistratz son chifrats.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Per ne saber mai sus Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Per ne saber mai sus sync</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Excepcions</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Los identificants e senhals pas salvats seràn mostrats aquí.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s enregistrarà pas los senhals pels sites listats aicí.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Los identificants e senhals seràn pas salvats per aquestes sites.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s enregistrarà pas los senhals per aquestes sites.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Suprimir totas las excepcions</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Recercar d’identificants</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Recercar de senhals</string>
<!-- The header for the site that a login is for -->
@@ -1859,17 +1888,11 @@
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Amagar lo senhal</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desblocatz per veire los identificants enregistrats</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Desblocatz per veire los senhals salvats</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Protegissètz vòstres identificants e senhals</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Securizatz los senhals salvats</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configuratz un esquèma de verrolhatge, un còdi PIN o un senhal per protegir vòstres identificants de connexion e senhals enregistrats se per cas qualqu’un accedisca a vòstre periferic.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Configuratz un esquèma de desverrolhatge, un còdi PIN o un senhal per protegir vòstres senhals salvats se per cas qualqu’un accedisca a vòstre aparelh.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Mai tard</string>
@@ -1886,9 +1909,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Darrièra utilizacion</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Menú per triar los identificants</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menú de tria dels senhals</string>
@@ -1897,42 +1917,28 @@
<string name="preferences_autofill">Emplenament automatic</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adreças</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartas de crèdit</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Metòdes de pagament</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar e completar automaticament las cartas</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Enregistrar e entresenhar los metòdes de pagament</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Donadas chifradas</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s chifra totes los metòdes de pagament qu’enregistratz</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizar las cartas entre los periferics</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizar las cartas</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Apondre una cartas de crèdit</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Apondre una carta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gerir las cartas enregistradas</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Gerir las cartas</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Apondre una adreça</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Gerir las adreças</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar e completar automaticament las adreças</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Salvar e emplenar automaticament las adreças</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Inclutz las informacions coma los numèros, las adreças electronicas e las adreças de liurason</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Incluses los numèros de telefòn e las adreças electronicas</string>
@@ -1956,8 +1962,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Suprimir la carta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Volètz vertadièrament suprimir aquesta carta bancària ?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Suprimir la carta ?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Suprimir</string>
@@ -1971,25 +1975,16 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Cartas enregistradas</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Picatz un numèro de carta de crèdit valid</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Picatz un numèro de carta valid</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Completatz aqueste camp</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Apondre un nom</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Desblocatz per veire las cartas enregistradas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Securizatz vòstras cartas de crèdit</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Securizatz los metòdes de pagament enregistrats</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configuratz un esquèma de verrolhatge, un còdi PIN o un senhal per protegir vòstres identificants de cartas de crèdit enregistrats se per cas qualqu’un accedisca a vòstre periferic.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Configuratz un esquèma de desverrolhatge, un còdi PIN o un senhal per protegir vòstres mejans de pagament se per cas qualqu’un accedisca a vòstre aparelh.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurar ara</string>
@@ -1998,9 +1993,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Desverrolhatz lo periferic</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desverrolhatz per utilizar las informacions de cartas de crèdit enregistradas</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Desblocatz per utilizar de metòdes de pagament enregistrats</string>
<!-- Title of the "Add address" screen -->
@@ -2009,12 +2001,6 @@
<string name="addresses_edit_address">Modificar l’adreça</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Gestion de las adreças</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Pichon nom</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Segond pichon nom</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Nom d’ostal</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nom</string>
<!-- The header for the street address of an address -->
@@ -2041,8 +2027,6 @@
<string name="addressess_delete_address_button">Suprimir l’adreça</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Volètz vertadièrament suprimir aquesta adreça ?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Suprimir aquesta adreça ?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Suprimir</string>
@@ -2142,8 +2126,6 @@ Exemple :\nhttps://suggestqueries.google.com/complete/search?client=firefox&amp
<string name="login_menu_delete_button">Suprimir</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Modificar</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Volètz vertadièrament suprimir aqueste identificant ?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Volètz vertadièrament suprimir aqueste senhal ?</string>
<!-- Positive action of a dialog asking to delete -->
@@ -2151,41 +2133,23 @@ Exemple :\nhttps://suggestqueries.google.com/complete/search?client=firefox&amp
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Anullar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opcions de l’identificant</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opcions de senhal</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Lo camp de tèxt modificable per l’adreça web de l’identificant.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Lo camp de tèxt modificable per l’adreça del site web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Lo camp de tèxt modificable pel nom d’utilizaire de l’identificant.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Lo camp de tèxt modificable pel nom d’utilizaire.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Lo camp de tèxt modificable pel senhal de l’identificant.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Lo camp de tèxt modificable pel senhal.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Enregistratz las modificacions de l’identificant.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Enregistrar las modificacions.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Modificar</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Modificar lo senhal</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Apondre un identificant novèl</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Apondre un senhal</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Senhal requesit</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Picar lo senhal</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Lo nom d’utilizaire es obligatòri</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Picar un nom d’utilizaire</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Lo nom d’òste es obligatòri</string>
@@ -2535,6 +2499,8 @@ Exemple :\nhttps://suggestqueries.google.com/complete/search?client=firefox&amp
<string name="translations_bottom_sheet_negative_button">Pas ara</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Veire la pagina originala</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Pagina originala non traducha cargada</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Acabat</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2718,13 +2684,18 @@ Exemple :\nhttps://suggestqueries.google.com/complete/search?client=firefox&amp
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Tornar</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Dobrir lo panèl de desvolopament</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Aisinas d’onglet</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Nombre d’onglets</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Actius</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Actius</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Actiu</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactius</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2742,6 +2713,31 @@ Exemple :\nhttps://suggestqueries.google.com/complete/search?client=firefox&amp
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Apondre als onglets privats</string>
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Contunhar</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Participar al sondatge</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Politica de confidencialitat</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label">Mandar</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Tampar</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Mercés per vòstre retorn !</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Plan satisfach</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Satisfach</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Indiferent</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Insatisfach</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Plan insatisfach</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Identificants</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-pa-rIN/strings.xml b/mobile/android/fenix/app/src/main/res/values-pa-rIN/strings.xml
index 2f5f2c0153..7991883f6d 100644
--- a/mobile/android/fenix/app/src/main/res/values-pa-rIN/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-pa-rIN/strings.xml
@@ -205,6 +205,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">ਐਡ-ਆਨ</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">ਇਕਸਟੈਨਸ਼ਨਾਂ</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">ਇਕਸਟੈਨਸ਼ਨਾਂ ਦਾ ਇੰਤਜ਼ਾਮ</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">ਹੋਰ ਇਕਸਟੈਨਸ਼ਨਾਂ ਲੱਭੋ</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">ਖਾਤਾ ਜਾਣਕਾਰੀ</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -223,6 +227,8 @@
<string name="browser_menu_open_in_regular_tab">ਰੈਲੂਲਰ ਟੈਬ ਵਿੱਚ ਖੋਲ੍ਹੋ</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">ਮੁੱਖ ਸਕਰੀਨ ‘ਤੇ ਜੋੜੋ</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">…ਮੁੱਖ ਸਕਰੀਨ ‘ਤੇ ਜੋੜੋ</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">ਇੰਸਟਾਲ ਕਰੋ</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -235,9 +241,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">ਸਫ਼ੇ ਦਾ ਉਲੱਥਾ ਕਰੋ</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">…ਭੰਡਾਰ ਵਿੱਚ ਸੰਭਾਲੋ</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">ਭੰਡਾਰ ‘ਚ ਸੰਭਾਲੋ</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">ਸਾਂਝਾ ਕਰੋ</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">…ਸਾਂਝਾ ਕਰੋ</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">%1$s ‘ਚ ਖੋਲ੍ਹੋ</string>
@@ -291,6 +301,25 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">ਸੰਭਾਲੋ</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">ਇਹ ਸਫ਼ੇ ਨੂੰ ਬੁੱਕਮਾਰਕ ਕਰੋ</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">ਬੁੱਕਮਾਰਕ ਨੂੰ ਸੋਧੋ</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">…PDF ਵਜੋਂ ਸੰਭਾਲੋ</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">ਪੜ੍ਹਨ ਝਲਕ ਨੂੰ ਚਾਲੂ ਕਰੋ</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">ਪੜ੍ਹਨ ਝਲਕ ਨੂੰ ਬੰਦ ਕਰੋ</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">…ਸਫ਼ੇ ਦਾ ਉਲੱਥਾ ਕਰੋ</string>
+
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s ਵਿੱਚ ਉਲੱਥਾ ਕੀਤਾ</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">…ਪਰਿੰਟ ਕਰੋ</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">ਇੱਥੇ ਕੋਈ ਇਕਸਟੈਨਸ਼ਨ ਨਹੀਂ ਹੈ</string>
@@ -388,8 +417,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox ਪਰਦੇਦਾਰੀ ਸੂਚਨਾ</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">ਸਾਡੀ ਪਰਦੇਦਾਰੀ ਸੂਚਨਾ ਵਿੱਚ ਹੋਰ ਜਾਣਕਾਰੀ ਲਵੋ</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">ਅਸੀਂ ਤੁਹਾਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਣਾ ਚਾਹੁੰਦੇ ਹਾਂ</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -601,7 +628,9 @@
<!-- Preference for language -->
<string name="preferences_language">ਭਾਸ਼ਾ</string>
<!-- Preference for translation -->
- <string name="preferences_translation">ਉਲੱਥਾ</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">ਉਲੱਥਾ</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">ਅਨੁਵਾਦ</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">ਡਾਟਾ ਚੋਣਾਂ</string>
<!-- Preference for data collection -->
@@ -675,10 +704,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">ਲੋੜੀਂਦਾ</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">ਚੋਣਵਾਂ</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">ਵੈੱਬਸਾਈਟ ਡਾਟਾ ਪੜ੍ਹਨ ਅਤੇ ਬਦਲਣ</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">ਵੈੱਬਸਾਈਟ ਨੂੰ ਹਟਾਉਣ</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">ਸਭ ਸਾਈਟਾਂ ਲਈ ਮਨਜ਼ੂਰੀ</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -805,8 +830,6 @@
<string name="preferences_sync_history">ਅਤੀਤ</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">ਬੁੱਕਮਾਰਕ</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">ਪਾਸਵਰਡ</string>
<!-- Preference for syncing tabs -->
@@ -834,8 +857,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%2$s %3$s ਉੱਤੇ %1$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ਕਰੈਡਿਟ ਕਾਰਡ</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">ਭੁਗਤਾਨ ਦੇ ਢੰਗ</string>
<!-- Preference for syncing addresses -->
@@ -851,6 +872,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">%s ਤੋਂ ਟੈਬ</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s ਟੈਬਾਂ ਬੰਦ ਕੀਤੀਆਂ: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text"> ਤਾਜ਼ਾ ਬੰਦ ਕੀਤੀਆਂ ਟੈਬਾਂ ਨੂੰ ਵੇਖੋ</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">ਛੋਟਾਂ</string>
@@ -1788,12 +1817,8 @@
ਮੁੱਖ ਸਕਰੀਨ ਉੱਤੇ ਸੌਖੀ ਤਰ੍ਹਾਂ ਜੋੜ ਸਕਦੇ ਹੋ।</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਅਤੇ ਪਾਸਵਰਡ</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">ਪਾਸਵਰਡ</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਅਤੇ ਪਾਸਵਰਡ ਸੰਭਾਲੋ</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">ਪਾਸਵਰਡਾਂ ਨੂੰ ਸੰਭਾਲੋ</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save"> ਸੰਭਾਲਣ ਲਈ ਪੁੱਛੋ</string>
@@ -1808,46 +1833,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">ਤੁਹਾਡੇ ਡਿਵਾਈਸ ਉੱਤੇ ਹੋਰ ਐਪਾਂ ਵਿੱਚ ਵਰਤੋਂਕਾਰ-ਨਾਂ ਅਤੇ ਪਾਸਵਰਡ ਭਰੋ।</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਜੋੜੋ</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">ਪਾਸਵਰਡ ਜੋੜੋ</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਸਿੰਕ ਕਰੋ</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">ਪਾਸਵਰਡ ਸਿੰਕ ਕਰੋ</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">ਡਿਵਾਈਸਾਂ ਵਿਚਾਲੇ ਲਾਗਇਨਾਂ ਨੂੰ ਸਿੰਕ ਕਰੋ</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">ਪਾਸਵਰਡ ਡਿਵਾਈਸਾਂ ਵਿਚਾਲੇ ਸਿੰਕ ਕਰੋ</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ਸੰਭਾਲੇ ਹੋਏ ਲਾਗਇਨ</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">ਸੰਭਾਲੇ ਹੋਏ ਪਾਸਵਰਡ</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">ਤੁਹਾਡੇ ਵਲੋਂ ਸੰਭਾਲੇ ਲਾਗਇਨ ਜਾਂ %s ਨਾਲ ਸਿੰਕ ਕੀਤੇ ਇੱਥੇ ਵੇਖਾਏ ਜਾਣਗੇ।</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">ਤੁਹਾਡੇ ਵਲੋਂ %s ਵਿੱਚ ਸੰਭਾਲੇ ਜਾਂ ਸਿੰਕ ਕੀਤੇ ਪਾਸਵਰਡਾਂ ਨੂੰ ਇੱਥੇ ਦਿਖਾਇਆ ਜਾਵੇਗਾ। ਤੁਹਾਡੇ ਸਾਰੇ ਸੰਭਾਲੇ ਪਾਸਵਰਡ ਇੰਕ੍ਰਿਪਟ ਕੀਤੇ ਹੁੰਦੇ ਹਨ।</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">ਸਿੰਕ ਬਾਰੇ ਹੋਰ ਜਾਣੋ।</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">ਸਿੰਕ ਬਾਰੇ ਹੋਰ ਜਾਣੋ</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">ਛੋਟਾਂ</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">ਨਾ ਸੰਭਾਲੇ ਹੋਏ ਲਾਗਇਨ ਅਤੇ ਪਾਸਵਰਡਾਂ ਨੂੰ ਇੱਥੇ ਸੰਭਾਲਿਆ ਜਾਵੇਗਾ।</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s ਇੱਥੇ ਦਿੱਤੀਆਂ ਹੋਈਆਂ ਸਾਈਟਾਂ ਲਈ ਪਾਸਵਰਡ ਨਹੀਂ ਸੰਭਾਲੇਗਾ।</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ਇਹਨਾਂ ਸਾਈਟਾਂ ਲਈ ਲਾਗਇਨ ਅਤੇ ਪਾਸਵਰਡ ਨਹੀਂ ਸੰਭਾਲੇ ਜਾਣਗੇ।</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s ਇਹਨਾਂ ਸਾਈਟਾਂ ਲਈ ਪਾਸਵਰਡ ਨਹੀਂ ਸੰਭਾਲੇਗਾ।</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">ਸਾਰੀਆਂ ਛੋਟਾਂ ਹਟਾ ਦਿਓ</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਖੋਜੋ</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">ਪਾਸਵਰਡ ਖੋਜੋ</string>
<!-- The header for the site that a login is for -->
@@ -1876,17 +1883,11 @@
<string name="saved_login_reveal_password">ਪਾਸਵਰਡ ਵੇਖਾਓ</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">ਪਾਸਵਰਡ ਲੁਕਾਓ</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ਆਪਣੇ ਸੰਭਾਲੇ ਲਾਗਇਨ ਵੇਖਣ ਲਈ ਅਣ-ਲਾਕ ਕਰੋ</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">ਆਪਣੇ ਸੰਭਾਲੇ ਹੋਏ ਪਾਸਵਰਡ ਵੇਖਣ ਲਈ ਅਣ-ਲਾਕ ਕਰੋ</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">ਆਪਣੇ ਲਾਗਇਨ ਅਤੇ ਪਾਸਵਰਡ ਸੁਰੱਖਿਅਤ ਕਰੋ</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">ਆਪਣੇ ਸੰਭਾਲੇ ਹੋਏ ਪਾਸਵਰਡਾਂ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰੋ</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ਆਪਣੇ ਲਾਗਇਨਾਂ ਅਤੇ ਪਾਸਵਰਡਾਂ ਨੂੰ ਤੁਹਾਡੇ ਡਿਵਾਈਸ ਨੂੰ ਰੱਖਣ ਵਾਲੇ ਕਿਸੇ ਦੀ ਪਹੁੰਚ ਤੋਂ ਸੁਰੱਖਿਅਤ ਰੱਖਣ ਲਈ ਡਿਵਾਈਸ ਲਾਕ ਪੈਟਰਨ, ਪਿੰਨ ਜਾਂ ਪਾਸਵਰਡ ਸੈਟ ਅੱਪ ਕਰੋ।</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">ਆਪਣੇ ਸੰਭਾਲੇ ਹੋਏ ਪਾਸਵਰਡਾਂ ਨੂੰ ਤੁਹਾਡੇ ਡਿਵਾਈਸ ਉੱਤੇ ਕਿਸੇ ਹੋਰ ਵੱਲੋਂ ਪਹੁੰਚ ਕਰਨ ਤੋਂ ਬਚਾਉਣ ਤੋਂ ਸੁਰੱਖਿਅਤ ਕਰਨ ਲਈ ਡਿਵਾਈਸ ਲਾਕ ਪੈਟਰਨ, ਪਿੰਨ ਜਾਂ ਪਾਸਵਰਡ ਸੈੱਟ ਕਰੋ।</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">ਬਾਅਦ \'ਚ</string>
@@ -1904,8 +1905,6 @@
<string name="saved_logins_sort_strategy_alphabetically">ਨਾਂ (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">ਆਖਰੀ ਵਰਤੋਂ</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਲੜੀਬਧ ਮੇਨੂ</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">ਪਾਸਵਰਡ ਮੇਨੂ ਨੂੰ ਲੜੀਬੱਧ ਕਰੋ</string>
@@ -1915,40 +1914,26 @@
<string name="preferences_autofill">ਆਪੇ-ਭਰੋ</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">ਸਿਰਨਾਵੇਂ</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ਕਰੈਡਿਟ ਕਾਰਡ</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">ਭੁਗਤਾਨ ਦੇ ਢੰਗ</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ਕਾਰਡ ਸੰਭਾਲੋ ਅਤੇ ਆਪਣੇ-ਆਪ ਭਰੋ</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">ਭੁਗਤਾਨ ਦੇ ਢੰਗ ਸੰਭਾਲੋ ਅਤੇ ਭਰੋ</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">ਡਾਟਾ ਇੰਕ੍ਰਿਪਟ ਕੀਤਾ ਹੈ</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s ਤੁਹਾਡੇ ਵਲੋਂ ਸੰਭਾਲੇ ਸਾਰੇ ਭੁਗਤਾਨ ਢੰਗਾਂ ਨੂੰ ਇੰਕ੍ਰਿਪਟ ਕਰਦਾ ਹੈ</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">ਡਿਵਾਈਸਾਂ ਵਿਚਾਲੇ ਕਾਰਡਾਂ ਨੂੰ ਸਿੰਕ ਕਰੋ</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">ਕਾਰਡ ਸਿੰਕ ਕਰੋ</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">ਕਰੈਡਿਟ ਕਾਰਡ ਜੋੜੋ</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">ਕਾਰਡ ਜੋੜੋ</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ਸੰਭਾਲੇ ਹੋਏ ਕਾਰਡਾਂ ਦਾ ਇੰਤਜ਼ਾਮ ਕਰੋ</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">ਕਾਰਡਾਂ ਦਾ ਇੰਤਜ਼ਾਮ ਕਰੋ</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">ਸਿਰਨਾਵਾਂ ਜੋੜੋ</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">ਸਿਰਨਾਵਿਆਂ ਦਾ ਇੰਤਜ਼ਾਮ ਕਰੋ</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">ਸਿਰਨਾਵੇਂ ਸੰਭਾਲੋ ਅਤੇ ਆਪਣੇ-ਆਪ ਭਰੋ</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">ਸਿਰਨਾਵਿਆਂ ਨੂੰ ਸੰਭਾਲੋ ਅਤੇ ਭਰੋ</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">ਨੰਬਰ, ਈਮੇਲ ਅਤੇ ਭੇਜਣ ਵਾਲੇ ਸਿਰਨਾਵਿਆਂ ਸਮੇਤ ਜਾਣਕਾਰੀ</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">ਫ਼ੋਨ ਨੰਬਰਾਂ ਅਤੇ ਈਮੇਲ ਸਿਰਨਾਵਿਆਂ ਸਮੇਤ</string>
@@ -1972,8 +1957,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">ਕਾਰਡ ਨੂੰ ਹਟਾਓ</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">ਕੀ ਤੁਸੀਂ ਇਹ ਕਰੈਡਿਟ ਕਾਰਡ ਹਟਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">ਕਾਰਡ ਨੂੰ ਹਟਾਉਣਾ ਹੈ?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">ਹਟਾਓ</string>
@@ -1987,24 +1970,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">ਸੰਭਾਲੇ ਹੋਏ ਕਾਰਡ</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ਵਾਜਬ ਕਰੈਡਿਟ ਕਾਰਡ ਨੰਬਰ ਦਿਓ ਜੀ</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">ਵਾਜਬ ਕਾਰਡ ਨੰਬਰ ਭਰੋ</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ਇਹ ਖੇਤਰ ਭਰੋ</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">ਨਾਂ ਜੋੜੋ</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">ਆਪਣੇ ਸੰਭਾਲੇ ਹੋਏ ਕਾਰਡ ਵੇਖਣ ਲਈ ਅਣ-ਲਾਕ ਕਰੋ</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">ਆਪਣੇ ਕਰੈਡਿਟ ਕਾਰਡ ਸੁਰੱਖਿਅਤ ਕਰੋ</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">ਆਪਣੇ ਸੰਭਾਲੇ ਹੋਏ ਭੁਗਤਾਨ ਢੰਗਾਂ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰੋ</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ਆਪਣੀ ਡਿਵਾਇਸ ਲਈ ਲਾਕ ਪੈਟਰਨ, ਪਿੰਨ, ਜਾਂ ਪਾਸਵਰਡ ਸੈੱਟ ਕਰੋ ਤਾਂ ਜੋ ਕਿਸੇ ਹੋਰ ਹੱਥ ਤੁਹਾਡਾ ਡਿਵਾਇਸ ਹੋਣ ਉੱਤੇ ਤੁਹਾਡੇ ਸੰਭਾਲੇ ਪਾਸਵਰਡ ਸੁਰੱਖਿਅਤ ਰਹਿਣ।</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">ਆਪਣੇ ਸੰਭਾਲੇ ਹੋਏ ਪਾਸਵਰਡ ਢੰਗਾਂ ਨੂੰ ਤੁਹਾਡੇ ਡਿਵਾਈਸ ਉੱਤੇ ਕਿਸੇ ਹੋਰ ਵੱਲੋਂ ਪਹੁੰਚ ਕਰਨ ਤੋਂ ਬਚਾਉਣ ਤੋਂ ਸੁਰੱਖਿਅਤ ਕਰਨ ਲਈ ਡਿਵਾਈਸ ਲਾਕ ਪੈਟਰਨ, ਪਿੰਨ ਜਾਂ ਪਾਸਵਰਡ ਸੈੱਟ ਕਰੋ।</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">ਹੁਣੇ ਸੈਟ ਅੱਪ ਕਰੋ</string>
@@ -2012,8 +1986,6 @@
<string name="credit_cards_warning_dialog_later">ਬਾਦ \'ਚ</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">ਆਪਣਾ ਡਿਵਾਇਸ ਅਣ-ਲਾਕ ਕਰੋ</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ਸੰਭਾਲੀ ਕਰੈਡਿਟ ਕਾਰਡ ਜਾਣਕਾਰੀ ਵਰਤਣ ਲਈ ਅਣ-ਲਾਕ ਕਰੋ</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">ਸੰਭਾਲੇ ਹੋਏ ਭੁਗਤਾਨ ਢੰਗਾਂ ਨੂੰ ਵਰਤਣ ਲਈ ਅਣ-ਲਾਕ ਕਰੋ</string>
@@ -2023,12 +1995,6 @@
<string name="addresses_edit_address">ਸਿਰਨਾਵੇਂ ਨੂੰ ਸੋਧੋ</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">ਸਿਰਨਾਵਿਆਂ ਦਾ ਇੰਤਜ਼ਾਮ ਕਰੋ</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">ਨਾਂ ਦਾ ਪਹਿਲਾਂ ਹਿੱਸਾ</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">ਮੱਧ ਨਾਂ</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">ਨਾਂ ਦਾ ਆਖਰੀ ਹਿੱਸਾ</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">ਨਾਂ</string>
<!-- The header for the street address of an address -->
@@ -2055,8 +2021,6 @@
<string name="addressess_delete_address_button">ਸਿਰਨਾਵੇਂ ਨੂੰ ਹਟਾਓ</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ਕੀ ਤੁਸੀਂ ਇਹ ਸਿਰਨਾਵੇਂ ਨੂੰ ਹਟਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">ਇਹ ਸਿਰਨਾਵੇਂ ਨੂੰ ਹਟਾਉਣਾ ਹੈ?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">ਹਟਾਓ</string>
@@ -2154,8 +2118,6 @@
<string name="login_menu_delete_button">ਹਟਾਓ</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">ਸੋਧੋ</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">ਕੀ ਤੁਸੀਂ ਇਹ ਲਾਗਇਨ ਹਟਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">ਕੀ ਤੁਸੀਂ ਇਸ ਪਾਸਵਰਡ ਨੂੰ ਹਟਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ?</string>
<!-- Positive action of a dialog asking to delete -->
@@ -2163,41 +2125,23 @@
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">ਰੱਦ ਕਰੋ</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਚੋਣਾਂ</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">ਪਾਸਵਰਡ ਚੋਣਾਂ</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਦੇ ਵੈੱਬ ਐਡਰੈਸ ਲਈ ਸੋਧਣਯੋਗ ਲਿਖਤ ਖੇਤਰ ਹੈ।</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">ਵੈੱਬਸਾਈਟ ਸਿਰਨਾਵਿਆਂ ਲਈ ਸੋਧ ਕਰਨ ਯੋਗ ਲਿਖਤ ਖੇਤਰ।</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਦੇ ਵਰਤੋਂਕਾਰ-ਨਾਂ ਲਈ ਸੋਧਣਯੋਗ ਲਿਖਤ ਖੇਤਰ ਹੈ।</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">ਵਰਤੋਂਕਾਰ-ਨਾਂ ਲਈ ਸੋਧ ਕਰਨ ਯੋਗ ਲਿਖਤ ਖੇਤਰ।</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ਲਾਗਇਨ ਦੇ ਪਾਸਵਰਡ ਲਈ ਸੋਧਣਯੋਗ ਲਿਖਤ ਖੇਤਰ ਹੈ।</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">ਪਾਸਵਰਡ ਲਈ ਸੋਧ ਕਰਨ ਯੋਗ ਲਿਖਤ ਖੇਤਰ।</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">ਤਬਦੀਲੀਆਂ ਨੂੰ ਲਾਗਇਨ ਲਈ ਸੰਭਾਲੋ।</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">ਤਬਦੀਲੀਆਂ ਨੂੰ ਸੰਭਾਲੋ।</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">ਸੋਧੋ</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">ਪਾਸਵਰਡ ਨੂੰ ਸੋਧੋ</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">ਨਵਾਂ ਲਾਗਇਨ ਜੋੜੋ</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">ਪਾਸਵਰਡ ਜੋੜੋ</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">ਪਾਸਵਰਡ ਚਾਹੀਦਾ ਹੈ</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">ਪਾਸਵਰਡ ਦਿਓ</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">ਵਰਤੋਂਕਾਰ-ਨਾਂ ਚਾਹੀਦਾ ਹੈ</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">ਵਰਤੋਂਕਾਰ-ਨਾਂ ਦਿਓ</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">ਹੋਸਟ-ਨਾਂ ਚਾਹੀਦਾ ਹੈ</string>
@@ -2545,6 +2489,8 @@
<string name="translations_bottom_sheet_negative_button">ਹਾਲੇ ਨਹੀਂ</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">ਅਸਲ ਵੇਖਾਓ</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">ਅਸਲ ਨਾ-ਅਨੁਵਾਦ ਕੀਤਾ ਸਫ਼ਾ ਲੋਡ ਕੀਤਾ</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">ਮੁਕੰਮਲ</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2602,6 +2548,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">ਉਲੱਥਾ ਸ਼ੀਟ ਬੰਦ ਕਰੋ</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">ਕੁਝ ਸੈਟਿੰਗਾਂ ਆਰਜ਼ੀ ਤੌਰ ਉੱਤੇ ਮੌਜੂਦ ਨਹੀਂ ਹਨ।</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">ਉਲੱਥੇ</string>
@@ -2624,6 +2573,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">”ਹਮੇਸ਼ਾ ਟਰਾਂਸਲੇਟ ਕਰੋ“ ਅਤੇ &quot;ਕਦੇ ਟਰਾਂਸਲੇਟ ਨਾ ਕਰੋ&quot; ਪਸੰਦਾਂ ਦਾ ਇੰਤਜ਼ਾਮ ਕਰਨ ਲਈ ਭਾਸ਼ਾ ਚੁਣੋ।</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">ਭਾਸ਼ਾਵਾਂ ਨੂੰ ਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ। ਬਾਅਦ ਵਿੱਚ ਮੁੜ ਜਾਂਚੋ।</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">ਟਰਾਂਸਲੇਸ਼ਨ ਲਈ ਪੇਸ਼ਕਸ਼ ਕਰੋ (ਮੂਲ)</string>
@@ -2646,6 +2598,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s ਨੂੰ ਹਟਾਓ</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">ਸਾਈਟਾਂ ਨੂੰ ਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ। ਬਾਅਦ ਵਿੱਚ ਮੁੜ ਜਾਂਚੋ।</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s ਨੂੰ ਹਟਾਉਣਾ ਹੈ?</string>
@@ -2725,13 +2679,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">ਪਿੱਛੇ ਜਾਓ</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">ਡੀਬੱਗ ਦਰਾਜ ਨੂੰ ਖੋਲ੍ਹੋ</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">ਟੈਬ ਟੂਲ</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">ਟੈਬ ਗਿਣਤੀ</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">ਸਰਗਰਮ</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">ਸਰਗਰਮ</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">ਸਰਗਰਮ</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">ਨਾ-ਸਰਗਰਮ</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2742,6 +2701,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">ਟੈਬ ਬਣਾਉਣ ਵਾਲਾ ਟੂਲ</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">bਣਾਉਣ ਲਈ ਟੈਬਾਂ ਦੀ ਗਿਣਤੀ</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">ਲਿਖਤ ਖੇਤਰ ਖਾਲੀ ਹੈ</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">ਸਿਰਫ਼ ਸਕਰਾਤਮਕ ਮੁੱਲ ਹੀ ਭਰੋ</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">ਸਿਫ਼ਰ ਤੋਂ ਵੱਡਾ ਨੰਬਰ ਭਰੋ</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">ਇੱਕ ਕਾਰਵਾਈ ਰਾਹੀਂ ਵੱਧ ਤੋਂ ਵੱਧ ਤਿਆਰ ਹੋਣ ਵਾਲੀਆਂ ਟੈਬਾਂ (%1$s) ਦੀ ਗਿਣਤੀ ਅੱਪੜ ਗਈ ਹੈ</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">ਸਰਗਰਮ ਟੈਬਾਂ ਵਿੱਚ ਜੋੜੋ</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2758,11 +2727,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">ਪਰਦੇਦਾਰੀ ਸੂਚਨਾ</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">ਭੇਜੋ</string>
+ <string name="micro_survey_submit_button_label">ਭੇਜੋ</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">ਬੰਦ ਕਰੋ</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">ਬੰਦ ਕਰੋ</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">ਤੁਹਾਡੀ ਫ਼ੀਡਬੈਕ ਲਈ ਤੁਹਾਡਾ ਧੰਨਵਾਦ ਹੈ!</string>
+ <string name="micro_survey_feedback_confirmation">ਤੁਹਾਡੀ ਫ਼ੀਡਬੈਕ ਲਈ ਤੁਹਾਡਾ ਧੰਨਵਾਦ ਹੈ!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">ਬਹੁਤ ਸੰਤੁਸ਼ਟ</string>
<!-- Option for likert scale -->
@@ -2774,6 +2743,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">ਬਹੁਤ ਅਸੰਤੁਸ਼ਟ</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">ਸਰਵੇਖਣ ਨੂੰ ਖੋਲ੍ਹੋ</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">ਸਰਵੇਖਣ ਨੂੰ ਬੰਦ ਕਰੋ</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">ਬੰਦ ਕਰੋ</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">ਲਾਗਇਨ</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-pl/strings.xml b/mobile/android/fenix/app/src/main/res/values-pl/strings.xml
index 0ba564a816..bbf9f2122d 100644
--- a/mobile/android/fenix/app/src/main/res/values-pl/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-pl/strings.xml
@@ -49,12 +49,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Ostatnio zachowane</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Ostatnio zachowane</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Wyświetl wszystkie dodane zakładki</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Wyświetl wszystkie dodane zakładki</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Usuń</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Usuń</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Zakładki</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Wyświetl wszystkie zakładki</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Usuń</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s jest tworzony przez Mozillę.</string>
@@ -143,8 +151,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">Nowa karta prywatna</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">Skrót do haseł</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">Hasła</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">Skrót do haseł</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -213,6 +223,8 @@
<string name="resync_button_content_description">Synchronizuj ponownie</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Znajdź na stronie</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Znajdź na stronie…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Przetłumacz stronę</string>
<!-- Browser menu button that saves the current tab to a collection -->
@@ -248,9 +260,29 @@
<string name="browser_menu_customize_home_1">Dostosuj stronę startową</string>
<!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
- <string name="browser_menu_sign_in" tools:ignore="UnusedResources">Zaloguj się</string>
- <!-- Browser menu caption label for the "Sign in" browser menu item described in browser_menu_sign_in -->
- <string name="browser_menu_sign_in_caption" tools:ignore="UnusedResources">Synchronizuj hasła, karty i nie tylko</string>
+ <string name="browser_menu_sign_in">Zaloguj się</string>
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">Synchronizuj hasła, karty i nie tylko</string>
+
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Ponownie zaloguj się do synchronizacji</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Wstrzymano synchronizację</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">Nowa karta prywatna</string>
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">Hasła</string>
+
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Nowości w przeglądarce %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Wersja na komputery</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Narzędzia</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Zachowaj</string>
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
@@ -558,6 +590,8 @@
<string name="preferences_account_sync_error">Połącz ponownie, aby wznowić synchronizację</string>
<!-- Preference for language -->
<string name="preferences_language">Język</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation">Tłumaczenie</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Udostępniane dane</string>
<!-- Preference for data collection -->
@@ -626,6 +660,20 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">Niedozwolone</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Wymagane</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcjonalne</string>
+ <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
+ <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Odczytywanie i zmienianie danych na witrynach</string>
+ <!-- The description of the icon that can delete one of the websites displayed -->
+ <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Usuń witrynę</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Zezwalaj na wszystkich witrynach</string>
+ <!-- The subtitle for the allow for all sites preference toggle -->
+ <string name="addons_permissions_allow_for_all_sites_subtitle" tools:ignore="UnusedResources">Jeśli ufasz temu rozszerzeniu, możesz udzielić mu pozwolenia na każdej witrynie.</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
<string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Inna kolekcja dodatków</string>
@@ -650,7 +698,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Wskocz z powrotem</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Ostatnio dodane zakładki</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Ostatnio dodane zakładki</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Zakładki</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Ostatnio odwiedzone</string>
@@ -2317,10 +2367,14 @@
<string name="translations_bottom_sheet_translate_from">Język źródłowy:</string>
<!-- Label for the dropdown to select which language to translate to on the translations dialog. Usually the translate to language selected will be the user's preferred language. -->
<string name="translations_bottom_sheet_translate_to">Język docelowy:</string>
+ <!-- Label for the dropdown to select which language to translate from on the translations dialog when the page language is not supported. This selection is to allow the user to select another language, in case we automatically detected the page language incorrectly. -->
+ <string name="translations_bottom_sheet_translate_from_unsupported_language">Wypróbuj inny język źródłowy</string>
<!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button">Nie teraz</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Wyświetl w oryginale</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Wczytano oryginalną nieprzetłumaczoną stronę</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">OK</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2340,7 +2394,7 @@
<!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
<string name="translation_error_language_not_supported_warning_text">Nie obsługujemy jeszcze tego języka (%1$s).</string>
<!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
- <string name="translation_error_language_not_supported_learn_more">Więcej informacji</string>
+ <string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">Więcej informacji</string>
<!-- Snackbar title shown if the user closes the Translation Request dialogue and a translation is in progress. -->
@@ -2354,7 +2408,9 @@
<!-- Translations options dialog -->
<!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
- <string name="translation_option_bottom_sheet_title">Opcje tłumaczenia</string>
+ <string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">Opcje tłumaczenia</string>
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title_heading">Opcje tłumaczenia</string>
<!-- Toggle switch label that allows a user to set the setting if they would like the browser to always offer or suggest translations when available. -->
<string name="translation_option_bottom_sheet_always_translate">Zawsze proponuj tłumaczenie</string>
<!-- Toggle switch label that allows a user to set if they would like a given language to automatically translate or not. The first parameter is the language name, for example, "Spanish". -->
@@ -2372,6 +2428,9 @@
<!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translation_option_bottom_sheet_about_translations">Informacje o tłumaczeniach w przeglądarce %1$s</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
+ <string name="translation_option_bottom_sheet_close_content_description">Zamknij funkcję tłumaczenia</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Tłumaczenia</string>
@@ -2494,6 +2553,8 @@
<string name="debug_drawer_title">Narzędzia do debugowania</string>
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Przejdź wstecz</string>
+
+ <!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Narzędzia kart</string>
<!-- The title of the tab count section in Tab Tools. -->
@@ -2516,4 +2577,40 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">Dodaj do nieaktywnych kart</string>
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Dodaj do prywatnych kart</string>
+
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Kontynuuj</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Wypełnij tę ankietę</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Zasady ochrony prywatności</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Wyślij</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label">Zamknij</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Dziękujemy za opinię!</string>
+
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Bardzo zadowolony</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Zadowolony</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Obojętny</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Niezadowolony</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Bardzo niezadowolony</string>
+
+ <!-- Debug drawer logins -->
+ <!-- The title of the Logins feature in the Debug Drawer. -->
+ <string name="debug_drawer_logins_title">Dane logowania</string>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Obecna domena: %s</string>
+ <!-- The label for a button to add a new fake login for the current domain in the Logins feature. -->
+ <string name="debug_drawer_logins_add_login_button">Dodaj fałszywe dane logowania do tej domeny</string>
+ <!-- Content description for delete button where parameter will be the username of the login -->
+ <string name="debug_drawer_logins_delete_login_button_content_description">Usuń dane logowania z nazwą użytkownika „%s”</string>
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-pt-rBR/strings.xml b/mobile/android/fenix/app/src/main/res/values-pt-rBR/strings.xml
index ec824d3eaa..c8b4cdf923 100644
--- a/mobile/android/fenix/app/src/main/res/values-pt-rBR/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-pt-rBR/strings.xml
@@ -201,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Extensões</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensões</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gerenciar extensões</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Descobrir mais extensões</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informações da conta</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -219,6 +223,8 @@
<string name="browser_menu_open_in_regular_tab">Abrir em aba normal</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Adicionar à tela do dispositivo</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Adicionar à tela do dispositivo…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -230,10 +236,14 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traduzir página</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Salvar em coleção…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Salvar em coleção</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Compartilhar</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Compartilhar…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Abrir no %1$s</string>
@@ -287,6 +297,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Salvar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Adicionar aos favoritos</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Editar favorito</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Salvar como PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Ativar modo de leitura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Desativar modo de leitura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traduzir página…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traduzido para %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimir…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Nenhuma extensão aqui</string>
@@ -384,8 +412,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Aviso de privacidade do Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Saiba mais em nosso aviso de privacidade</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Adoramos manter você seguro</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -594,7 +620,9 @@
<!-- Preference for language -->
<string name="preferences_language">Idioma</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Tradução</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Tradução</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Tradução</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Escolha de dados</string>
<!-- Preference for data collection -->
@@ -667,10 +695,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Obrigatório</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Ler e alterar dados de sites</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Excluir site</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permitir em todos os sites</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -798,8 +822,6 @@
<string name="preferences_sync_history">Histórico</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Favoritos</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Contas de acesso</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Senhas</string>
<!-- Preference for syncing tabs -->
@@ -826,8 +848,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s no %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartões de crédito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Métodos de pagamento</string>
<!-- Preference for syncing addresses -->
@@ -843,6 +863,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Aba de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Abas do %1$s fechadas: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ver abas fechadas recentemente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Exceções</string>
@@ -1773,12 +1801,8 @@
<string name="add_to_homescreen_description_2">Você pode facilmente adicionar este site à tela inicial do dispositivo para ter acesso imediato e navegar mais rápido com uma experiência semelhante a um aplicativo.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Contas e senhas</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Senhas</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar contas e senhas</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Salvar senhas</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Perguntar se deve salvar</string>
@@ -1793,46 +1817,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Preencher nomes de usuário e senhas em outros aplicativos no dispositivo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Adicionar conta</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Adicionar senha</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar contas</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizar senhas</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar contas entre dispositivos</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronizar senhas entre dispositivos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Contas salvas</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Senhas salvas</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">As contas que você salvar ou sincronizar no %s aparecem aqui.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">As senhas que você salva ou sincroniza no %s aparecem aqui. Todas as senhas que você salva são criptografadas.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Saiba mais sobre sincronização.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Saiba mais sobre sincronização</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Exceções</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Contas e senhas que não são salvas são mostradas aqui.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">O %s não salva senhas dos sites desta lista.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Contas e senhas desses sites não serão salvas.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">O %s não salva senhas desses sites.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Excluir todas as exceções</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Pesquisar contas</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Procurar senhas</string>
<!-- The header for the site that a login is for -->
@@ -1861,18 +1866,12 @@
<string name="saved_login_reveal_password">Exibir senha</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Ocultar senha</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloqueie para ver suas contas salvas</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Desbloqueie para ver as senhas salvas</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Proteja suas contas e senhas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Proteja as senhas salvas</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configure um método de bloqueio do dispositivo (desenho, código PIN ou senha) para proteger o acesso a suas contas e senhas salvas, caso outras pessoas usem seu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Configure um método de bloqueio do dispositivo (desenho, código PIN ou senha) para proteger o acesso a suas senhas salvas, caso outras pessoas usem seu dispositivo.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Mais tarde</string>
@@ -1889,8 +1888,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nome (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Data de uso</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Menu de ordenação de contas</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menu de ordenação de senhas</string>
@@ -1900,41 +1897,27 @@
<string name="preferences_autofill">Preenchimento automático</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Endereços</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartões de crédito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Métodos de pagamento</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar e preencher cartões automaticamente</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Salvar e preencher métodos de pagamento</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Os dados são criptografados</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">O %s criptografa todos os métodos de pagamento que você salva</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizar cartões entre dispositivos</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizar cartões</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Adicionar cartão de crédito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Adicionar cartão</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gerenciar cartões salvos</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Gerenciar cartões</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Adicionar endereço</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Gerenciar endereços</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar e preencher endereços automaticamente</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Salvar e preencher endereços</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Incluir informações como números, email e endereços de entrega</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Incluir números de telefone e endereços de email</string>
@@ -1958,8 +1941,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Excluir cartão</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Tem certeza que quer excluir este cartão de crédito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Excluir cartão?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Excluir</string>
@@ -1973,24 +1954,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Cartões salvos</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Digite um número de cartão de crédito válido</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Digite um número de cartão válido</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Preencha este campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Adicionar um nome</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Desbloqueie para ver seus cartões salvos</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Proteja seus cartões de crédito</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Proteja seus métodos de pagamento salvos</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configure um método de bloqueio do dispositivo (desenho, código PIN ou senha) para proteger o acesso a seus cartões de crédito salvos, caso outras pessoas usem seu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Configure um método de bloqueio do dispositivo (desenho, código PIN ou senha) para proteger o acesso a seus métodos de pagamento salvos, caso outras pessoas usem seu dispositivo.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurar agora</string>
@@ -1999,9 +1971,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Desbloquear dispositivo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloqueie para usar informações armazenadas de cartões de crédito</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Desbloqueie para usar formas de pagamento salvas</string>
<!-- Title of the "Add address" screen -->
@@ -2011,12 +1980,6 @@
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Gerenciar endereços</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Primeiro nome</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Nome do meio</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Sobrenome</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nome</string>
<!-- The header for the street address of an address -->
@@ -2043,8 +2006,6 @@
<string name="addressess_delete_address_button">Excluir endereço</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Tem certeza que quer excluir este endereço?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Excluir este endereço?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Excluir</string>
@@ -2142,49 +2103,29 @@
<string name="login_menu_delete_button">Excluir</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Editar</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Tem certeza que quer excluir esta conta?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Tem certeza que quer excluir esta senha?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Excluir</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancelar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opções da conta</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opções de senhas</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editável do endereço web da conta.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">O campo de texto editável do endereço do site.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editável do nome de usuário da conta.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">O campo de texto editável do nome de usuário.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editável da senha da conta.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">O campo de texto editável da senha.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Salvar alterações na conta.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Salvar alterações.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Editar</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Editar senha</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Adicionar conta</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Adicionar senha</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Senha é obrigatória</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Digite uma senha</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Nome de usuário é obrigatório</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Digite um nome de usuário</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Nome de servidor é obrigatório</string>
@@ -2597,6 +2538,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Fechar painel de tradução</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Algumas configurações estão temporariamente indisponíveis.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Tradução</string>
@@ -2619,6 +2563,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Selecione um idioma para gerenciar as preferências de ”sempre traduzir“ e ”nunca traduzir“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Não foi possível carregar idiomas. Tente novamente mais tarde.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Oferecer tradução (padrão)</string>
@@ -2641,6 +2588,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Remover %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Não foi possível carregar sites. Tente novamente mais tarde.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Excluir %1$s?</string>
@@ -2719,13 +2668,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Voltar à página anterior</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Abrir painel de depuração</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Ferramentas de abas</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Número de abas</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Ativas</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Ativas</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Ativo</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inativas</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2736,6 +2690,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Ferramenta de criação de abas</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Número de abas a criar</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">O campo de texto está vazio</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Insira apenas números inteiros positivos</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Insira um número maior que zero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Excedido o número máximo de abas (%1$s) que podem ser geradas em uma operação</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Adicionar às abas ativas</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2752,11 +2716,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Aviso de privacidade</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Enviar</string>
+ <string name="micro_survey_submit_button_label">Enviar</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Fechar</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Fechar</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Obrigado por sua opinião!</string>
+ <string name="micro_survey_feedback_confirmation">Obrigado por sua opinião!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Muito satisfeito</string>
<!-- Option for likert scale -->
@@ -2768,6 +2732,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Muito insatisfeito</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Abrir pesquisa de opinião</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Fechar pesquisa de opinião</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Fechar</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Contas de acesso</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-pt-rPT/strings.xml b/mobile/android/fenix/app/src/main/res/values-pt-rPT/strings.xml
index 35a61211fc..3a9bbb4c9a 100644
--- a/mobile/android/fenix/app/src/main/res/values-pt-rPT/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-pt-rPT/strings.xml
@@ -201,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Extras</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensões</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gerir extensões</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Descubra mais extensões</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informações da conta</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -219,6 +223,8 @@
<string name="browser_menu_open_in_regular_tab">Abrir num separador normal</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Adicionar ao ecrã Inicial</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Adicionar ao ecrã inicial…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instalar</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -230,9 +236,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Traduzir página</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Guardar na coleção…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Guardar na coleção</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Partilhar</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Partilhar…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Abrir no %1$s</string>
@@ -285,6 +295,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Guardar</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Adicionar página aos marcadores</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Editar marcador</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Guardar como PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Ativar Vista de leitura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Desativar a Vista de leitura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Traduzir página…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traduzido para %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprimir…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Sem extensões aqui</string>
@@ -382,8 +410,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Política de privacidade do Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Saiba mais nas nossas informações de privacidade</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Adoramos mantê-lo(a) seguro(a)</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -592,7 +618,9 @@
<!-- Preference for language -->
<string name="preferences_language">Idioma</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Tradução</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Tradução</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Traduções</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Opções de dados</string>
<!-- Preference for data collection -->
@@ -665,10 +693,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Necessário</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Opcional</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Ler e alterar dados de websites</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Eliminar site</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permitir para todos os sites</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -774,7 +798,7 @@
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
<string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Experimente reiniciar as extensões</string>
<!-- Button text on the extension crash dialog to prompt the user to try restarting the extensions but the dialog will reappear if it is unsuccessful again -->
- <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Tente reiniciar as extensões</string>
+ <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Experimentar reiniciar as extensões</string>
<!-- The user will continue with all add-ons disabled -->
<string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Continuar com as extensões desativadas</string>
@@ -794,8 +818,6 @@
<string name="preferences_sync_history">Histórico</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Marcadores</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenciais</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Palavras-passe</string>
<!-- Preference for syncing tabs -->
@@ -822,8 +844,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s no %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartões de crédito</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Métodos de pagamento</string>
<!-- Preference for syncing addresses -->
@@ -839,6 +859,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Separador de %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s separadores fechados: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ver separadores fechados recentemente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Exceções</string>
@@ -1770,11 +1798,7 @@
<string name="add_to_homescreen_description_2">Pode adicionar facilmente este site ao ecrã inicial do seu dispositivo para ter acesso instantâneo e navegar mais rápido, com uma experiência semelhante ao de uma aplicação.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenciais e palavras-passe</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Palavras-passe</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar credenciais e palavras-passe</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Guardar palavras-passe</string>
@@ -1791,47 +1815,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Preencher nomes de utilizador e palavras-passe noutras aplicações no seu dispositivo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Adicionar credenciais</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Adicionar palavra-passe</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronização de credenciais</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sincronizar palavras-passe</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sincronizar credenciais entre dispositivos</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sincronize palavras-passe entre dispositivos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Credenciais guardadas</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Palavras-passe guardadas</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">As credenciais que guardar ou sincronizar com o %s serão apresentadas aqui.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">As palavras-passe que guardar ou sincronizar com o %s serão listadas aqui. Todas as palavras-passe que guarda são encriptadas.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Saber mais sobre a sincronização.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Saber mais sobre a sincronização</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Exceções</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">As credenciais e palavras-passe que não estão guardadas serão mostradas aqui.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">O %s não irá guardar palavras-passe para sites listados aqui.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">As credenciais e palavras-passe não serão guardadas para estes sites.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">O %s não irá guardar as palavras-passe para estes sites.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Eliminar todas as exceções</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Pesquisar credenciais</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Procurar palavras-passe</string>
<!-- The header for the site that a login is for -->
@@ -1861,17 +1866,11 @@
<string name="saved_login_reveal_password">Mostrar palavra-passe</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Ocultar palavra-passe</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloqueie para ver as credenciais guardadas</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Desbloqueie para ver as palavras-passe guardadas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Proteja as suas credenciais e palavras-passe</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Proteja as suas palavras-passe guardadas</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configure um padrão, PIN ou palavra-passe de bloqueio do dispositivo para impedir que as suas credenciais e palavras-passe guardadas sejam acedidas por outra pessoa que tenha acesso ao seu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Configure um padrão, PIN ou palavra-passe de bloqueio do dispositivo para impedir que as suas palavras-passe guardadas sejam acedidas por outra pessoa que tenha acesso ao seu dispositivo.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Mais tarde</string>
@@ -1888,8 +1887,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Nome (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Última utilização</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Menu de ordenação de credenciais</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menu de ordenação de palavras-passe</string>
@@ -1899,29 +1896,19 @@
<string name="preferences_autofill">Preenchimento automático</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Endereços</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Cartões de crédito</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Métodos de pagamento</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar e preencher automaticamente cartões</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Guardar e preencher métodos de pagamento</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Os dados são encriptados</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">O %s encripta todos os métodos de pagamento que guarda</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizar cartões entre dispositivos</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizar cartões</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Adicionar cartão de crédito</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Adicionar cartão</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Gerir cartões guardados</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Gerir cartões</string>
<!-- Preference option for adding an address -->
@@ -1929,12 +1916,8 @@
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Gerir endereços</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar e preencher automaticamente endereços</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Guardar e preencher endereços</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Incluir informações como números, e-mail e endereços de entrega</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Inclui números de telefone e endereços de e-mail</string>
@@ -1958,8 +1941,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Eliminar cartão</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Tem a certeza de que quer apagar este cartão de crédito?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Eliminar cartão?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Apagar</string>
@@ -1973,23 +1954,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Cartões guardados</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Por favor, introduza um número de cartão de crédito válido</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Insira um número de cartão válido</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Por favor preencha este campo</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Adicionar um nome</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Desbloquear para ver os cartões guardados</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Proteja os seus cartões de crédito</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Proteja os seus métodos de pagamento guardados</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Configure um padrão, PIN ou palavra-passe de bloqueio do dispositivo para impedir que os seus cartões de crédito guardados sejam acedidos por outra pessoa que tenha acesso ao seu dispositivo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Configure um padrão, PIN ou palavra-passe de bloqueio do dispositivo para impedir que os seus métodos de pagamento guardados sejam acedidos por outra pessoa que tenha acesso ao seu dispositivo.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Configurar agora</string>
@@ -1997,8 +1970,6 @@
<string name="credit_cards_warning_dialog_later">Mais tarde</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Desbloquear o seu dispositivo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Desbloquear para utilizar as informações de cartão de crédito armazenadas</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Desbloquear para utilizar métodos de pagamento guardados</string>
@@ -2008,12 +1979,6 @@
<string name="addresses_edit_address">Editar endereço</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Gerir endereços</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Primeiro nome</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Nome do meio</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Último nome</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Nome</string>
<!-- The header for the street address of an address -->
@@ -2040,8 +2005,6 @@
<string name="addressess_delete_address_button">Apagar endereço</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Tem a certeza de que quer eliminar este endereço?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Eliminar este endereço?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Apagar</string>
@@ -2140,49 +2103,29 @@
<string name="login_menu_delete_button">Eliminar</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Editar</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Tem a certeza que deseja eliminar esta credencial?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Tem a certeza que quer eliminar esta palavra-passe?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Eliminar</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Cancelar</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Opções de credenciais</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Opções de palavra-passe</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editável para o endereço de Internet da credencial.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">O campo de texto editável para o endereço do site.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editável para o nome de utilizador da credencial.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">O campo de texto editável para o nome de utilizador.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">O campo de texto editável para a palavra-passe da credencial.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">O campo de texto editável para a palavra-passe.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Guardar alterações na credencial.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Guardar alterações.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Editar</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Editar palavra-passe</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Adicionar nova credencial</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Adicionar palavra-passe</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">É necessária uma palavra-passe</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Introduza uma palavra-passe</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">É necessário um nome de utilizador</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Introduza um nome de utilizador</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">É necessário um nome de servidor</string>
@@ -2525,13 +2468,13 @@
<!-- Label for the dropdown to select which language to translate to on the translations dialog. Usually the translate to language selected will be the user's preferred language. -->
<string name="translations_bottom_sheet_translate_to">Traduzir para</string>
<!-- Label for the dropdown to select which language to translate from on the translations dialog when the page language is not supported. This selection is to allow the user to select another language, in case we automatically detected the page language incorrectly. -->
- <string name="translations_bottom_sheet_translate_from_unsupported_language">Tente outro idioma fonte</string>
+ <string name="translations_bottom_sheet_translate_from_unsupported_language">Tentar outro idioma fonte</string>
<!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button">Agora não</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Mostrar original</string>
<!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
- <string name="translations_bottom_sheet_restore_accessibility_announcement">Carregada página original não traduzida</string>
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Carregada a página original não traduzida</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Feito</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2588,6 +2531,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Fechar folha de traduções</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Algumas definições estão temporariamente indisponíveis.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Traduções</string>
@@ -2610,6 +2556,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Selecione um idioma para gerir as preferências “traduzir sempre” e “nunca traduzir”.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Não foi possível carregar os idiomas. Por favor, volte mais tarde.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Oferecer para traduzir (predefinição)</string>
@@ -2632,6 +2581,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Remover %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Não foi possível carregar os sites. Por favor, volte mais tarde.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Eliminar %1$s?</string>
@@ -2709,13 +2660,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Navegar de volta</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Abrir caixa de depuração</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Ferramentas de separadores</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Contagem de separadores</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Ativo</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Ativo</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Ativo</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inativo</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2726,6 +2682,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Ferramenta de criação de separadores</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Quantidade de separadores a criar</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">O campo de texto está vazio</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Introduza apenas inteiros positivos</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Introduza um número maior que zero</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Excedido o número máximo de (%1$s) separadores que podem ser gerados numa operação</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Adicionar aos separadores ativos</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2740,24 +2706,32 @@
<!-- The survey header -->
<string name="micro_survey_survey_header">Concluir este questionário</string>
<!-- The privacy notice link -->
- <string name="micro_survey_privacy_notice">Política de privacidade</string>
+ <string name="micro_survey_privacy_notice">Informação de privacidade</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Submeter</string>
+ <string name="micro_survey_submit_button_label">Submeter</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Fechar</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Fechar</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Obrigado pela sua opinião!</string>
+ <string name="micro_survey_feedback_confirmation">Obrigado pela sua opinião!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Muito satisfeito(a)</string>
<!-- Option for likert scale -->
- <string name="likert_scale_option_2" tools:ignore="UnusedResources">Satisfeito</string>
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Satisfeito(a)</string>
<!-- Option for likert scale -->
- <string name="likert_scale_option_3" tools:ignore="UnusedResources">Neutro</string>
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Neutro(a)</string>
<!-- Option for likert scale -->
- <string name="likert_scale_option_4" tools:ignore="UnusedResources">Insatisfeito</string>
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Insatisfeito(a)</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Muito insatisfeito(a)</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Abrir inquérito</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Fechar inquérito</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Fechar</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Credenciais</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-rm/strings.xml b/mobile/android/fenix/app/src/main/res/values-rm/strings.xml
index 84687df723..da3bde562b 100644
--- a/mobile/android/fenix/app/src/main/res/values-rm/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-rm/strings.xml
@@ -386,6 +386,8 @@
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_description_nimbus_4" tools:ignore="UnusedResources">Dapli che 100 milliuns persunas protegian lur sfera privata cun tscherner in navigatur dad ina organisaziun senza finamira da profit.</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_description_nimbus_5" tools:ignore="UnusedResources">Ils fastizaders enconuschents? Bloccads automaticamain. Extensiuns? Emprova tuttas 700. PDFs? Noss lectur integrà als administrescha senza problems.</string>
+ <!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_description_nimbus_2" moz:RemovedIn="124" tools:ignore="UnusedResources">Noss navigatur dad in\'organisaziun senza finamira da profit, gida ad evitar che interpresas ta persequiteschian a la zuppada en il web.\n
\nLegia dapli dal tema en nossas infurmaziuns davart la protecziun da datas.</string>
<!-- Text for the link to the privacy notice webpage for set as firefox default browser screen.
diff --git a/mobile/android/fenix/app/src/main/res/values-ru/strings.xml b/mobile/android/fenix/app/src/main/res/values-ru/strings.xml
index 1fe07b765d..7f2b52db90 100644
--- a/mobile/android/fenix/app/src/main/res/values-ru/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-ru/strings.xml
@@ -206,6 +206,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Дополнения</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Расширения</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Управление расширениями</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Откройте для себя больше расширений</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Ваш аккаунт</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -224,6 +228,8 @@
<string name="browser_menu_open_in_regular_tab">Открыть в обычной вкладке</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">На домашний экран</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Добавить на домашний экран…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Установить</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -235,9 +241,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Перевести страницу</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Сохранить в коллекцию…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">В сборник</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Поделиться</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Поделиться…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Открыть в %1$s</string>
@@ -292,6 +302,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Сохранить</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Добавить страницу в закладки</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Изменить закладку</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Сохранить как PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Включить Вид для чтения</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Отключить Вид для чтения</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Перевести страницу…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Переведено на %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Печать…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Здесь нет расширений</string>
@@ -389,8 +417,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Уведомление о конфиденциальности Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Узнайте больше в нашем уведомлении о конфиденциальности</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Нам нравится обеспечивать вашу безопасность</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -599,7 +625,9 @@
<!-- Preference for language -->
<string name="preferences_language">Язык</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Перевод</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Перевод</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Переводы</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Выбор данных</string>
<!-- Preference for data collection -->
@@ -672,12 +700,8 @@
<!-- The title of the required permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Обязательно</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
- <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Необязательно</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Чтение и изменение данных веб-сайтов</string>
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Необязательные</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Удалить веб-сайт</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Разрешить для всех сайтов</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -803,8 +827,6 @@
<string name="preferences_sync_history">Историю</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Закладки</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Пароли</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Пароли</string>
<!-- Preference for syncing tabs -->
@@ -831,8 +853,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s на %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Банковские карты</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Способы оплаты</string>
<!-- Preference for syncing addresses -->
@@ -848,6 +868,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Вкладка с %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Закрыто %1$s вкладок: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Просмотр недавно закрытых вкладок</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Исключения</string>
@@ -1796,12 +1824,8 @@
<string name="add_to_homescreen_description_2">Вы можете легко добавить этот сайт на домашний экран вашего устройства, чтобы иметь к нему мгновенный доступ.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Пароли</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Пароли</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Сохранение паролей</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Сохранять пароли</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Предлагать сохранить</string>
@@ -1816,47 +1840,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Заполнять имена пользователей и пароли в других приложениях на вашем устройстве.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Добавить логин</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Добавить пароль</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Синхронизация логинов</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Синхронизировать пароли</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Синхронизировать логины между устройствами</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Синхронизировать пароли между устройствами</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Сохранённые пароли</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Сохранённые пароли</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Пароли, которые вы сохраняете или синхронизируете в %s, появятся тут.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Пароли, которые вы сохраните или синхронизируете в %s, будут показаны здесь. Все сохраняемые вами пароли зашифрованы.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Узнайте больше о синхронизации.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Узнайте больше о синхронизации</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Исключения</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Здесь будут показаны не сохраняемые логины и пароли.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s не будет сохранять пароли для перечисленных здесь сайтов.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Логины и пароли для этих сайтов сохраняться не будут.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s не будет сохранять пароли для этих сайтов.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Удалить все исключения</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Поиск логинов</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Поиск паролей</string>
<!-- The header for the site that a login is for -->
@@ -1885,17 +1890,11 @@
<string name="saved_login_reveal_password">Показать пароль</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Скрыть пароль</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Разблокируйте, чтобы просмотреть сохранённые пароли</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Разблокируйте, чтобы просмотреть сохранённые пароли</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Защитите свои логины и пароли</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Защитите сохранённые пароли</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Настройте графический ключ, Пин-код или пароль для блокировки устройства, чтобы защитить сохранённые пароли, если кто-либо ещё получит доступ к вашему устройству.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Настройте графический ключ, пин-код или пароль для разблокировки устройства, чтобы защитить сохранённые пароли на случай, если кто-либо ещё получит доступ к вашему устройству.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Позже</string>
@@ -1912,8 +1911,6 @@
<string name="saved_logins_sort_strategy_alphabetically">По имени (А-Я)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">По последнему использованию</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Меню сортировки логинов</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Меню сортировки паролей</string>
@@ -1923,41 +1920,27 @@
<string name="preferences_autofill">Автозаполнение</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Адреса</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Банковские карты</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Способы оплаты</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Сохранять и автоматически заполнять данные карт</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Сохранить и заполнять способы оплаты</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Данные зашифрованы</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s шифрует все сохраняемые вами способы оплаты</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Синхронизировать карты между различными устройствами</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Синхронизировать карты</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Добавить банковскую карту</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Добавить карту</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Управление сохранёнными картами</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Управление картами</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Добавить адрес</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Управление адресами</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Сохранять и автоматически заполнять адреса</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Сохранять и заполнять адреса</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Включая такие сведения, как номера, адреса эл. почты и доставок</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Включает номера телефонов и адреса электронной почты</string>
@@ -1981,8 +1964,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Удалить карту</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Вы уверены, что хотите удалить эту банковскую карту?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Удалить карту?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Удалить</string>
@@ -1995,24 +1976,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Сохранённые карты</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Пожалуйста, введите правильный номер карты</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Введите корректный номер карты</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Пожалуйста, заполните это поле</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Добавьте имя</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Разблокируйте, чтобы просмотреть сохранённые карты</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Защитите свои банковские карты</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Защитите сохранённые способы оплаты</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Настройте графический ключ, Пин-код или пароль для блокировки устройства, чтобы защитить сохранённые банковские карты, если кто-либо ещё получит доступ к вашему устройству.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Настройте графический ключ, Пин-код или пароль для разблокировки устройства, чтобы защитить сохранённые способы оплаты, на случай, если кто-либо ещё получит доступ к вашему устройству.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Настроить сейчас</string>
@@ -2020,8 +1992,6 @@
<string name="credit_cards_warning_dialog_later">Позже</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Разблокируйте своё устройство</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Разблокируйте, чтобы использовать сохранённые данные банковской карты</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Разблокируйте, чтобы использовать сохранённые способы оплаты</string>
@@ -2031,12 +2001,6 @@
<string name="addresses_edit_address">Изменить адрес</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Управление адресами</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Имя</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Отчество</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Фамилия</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Название</string>
<!-- The header for the street address of an address -->
@@ -2062,8 +2026,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Удалить адрес</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Вы уверены, что хотите удалить этот адрес?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Удалить этот адрес?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Удалить</string>
@@ -2161,49 +2123,29 @@
<string name="login_menu_delete_button">Удалить</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Править</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Вы уверены, что хотите удалить этот пароль?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Вы уверены, что хотите удалить этот пароль?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Удалить</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Отмена</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Настройки логина</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Настройки пароля</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Редактируемое текстовое поле для веб-адреса логина.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Редактируемое текстовое поле для адреса веб-сайта.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Редактируемое текстовое поле для имени пользователя логина.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Редактируемое текстовое поле для имени пользователя.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Редактируемое текстовое поле для пароля логина.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Редактируемое текстовое поле для пароля.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Сохранить изменения в логине.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Сохранить изменения.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Правка</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Изменить пароль</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Добавить новый логин</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Добавить пароль</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Требуется пароль</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Введите пароль</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Требуется имя пользователя</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Введите имя пользователя</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Введите имя сервера</string>
@@ -2611,6 +2553,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Закрыть область переводов</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Некоторые настройки временно недоступны.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Переводы</string>
@@ -2633,6 +2578,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Выберите язык для управления настройками «всегда переводить» и «никогда не переводить».</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Не удалось загрузить языки. Пожалуйста, проверьте позже.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Предлагать перевод (по умолчанию)</string>
@@ -2655,6 +2603,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Удалить %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Не удалось загрузить сайты. Пожалуйста, проверьте позже.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Удалить %1$s?</string>
@@ -2732,13 +2682,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Перейти назад</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Открыть панель отладки</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Инструменты вкладок</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Число вкладок</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Активных</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Активных</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Активные</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Неактивных</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2749,6 +2704,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Инструмент создания вкладок</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Количество вкладок для создания</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Текстовое поле пусто</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Пожалуйста, введите только положительные целые числа</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Пожалуйста, введите число больше нуля</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Превышено максимальное число вкладок (%1$s), которое может быть сгенерировано за одну операцию</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Добавить в активные вкладки</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2765,11 +2730,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Уведомление о конфиденциальности</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Отправить</string>
+ <string name="micro_survey_submit_button_label">Отправить</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Закрыть</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Закрыть</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Спасибо за ваш отзыв!</string>
+ <string name="micro_survey_feedback_confirmation">Спасибо за ваш отзыв!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Полностью удовлетворяет</string>
<!-- Option for likert scale -->
@@ -2781,6 +2746,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Совсем не удовлетворяет</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Открыть опрос</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Закрыть опрос</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Закрыть</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Логины</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-sat/strings.xml b/mobile/android/fenix/app/src/main/res/values-sat/strings.xml
index 45ab837aed..4b085d93f8 100644
--- a/mobile/android/fenix/app/src/main/res/values-sat/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-sat/strings.xml
@@ -45,12 +45,21 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">ᱱᱤᱛ ᱥᱟᱺᱪᱟᱣᱟᱜ</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">ᱱᱤᱛ ᱥᱟᱺᱪᱟᱣᱟᱜ</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">ᱡᱷᱚᱛᱚ ᱥᱟᱺᱪᱟᱣ ᱠᱟᱱ ᱵᱩᱠᱢᱟᱨᱠ ᱠᱚ ᱫᱮᱠᱷᱟᱣ ᱢᱮ</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">ᱡᱷᱚᱛᱚ ᱥᱟᱺᱪᱟᱣ ᱠᱟᱱ ᱵᱩᱠᱢᱟᱨᱠ ᱠᱚ ᱫᱮᱠᱷᱟᱣ ᱢᱮ</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">ᱚᱪᱚᱜᱽ ᱢᱮ</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">ᱚᱪᱚᱜᱽ ᱢᱮ</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">ᱵᱩᱠᱢᱟᱨᱠ ᱠᱚ</string>
+
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">ᱡᱷᱚᱛᱚ ᱵᱩᱠᱢᱟᱨᱠᱠᱚ ᱫᱮᱠᱷᱟᱣ ᱢᱮ</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">ᱚᱪᱚᱜᱽ ᱢᱮ</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s ᱛᱮᱭᱟᱨ ᱦᱩᱭ ᱠᱟᱱᱟ ᱢᱳᱡᱤᱞᱟ ᱫᱟᱨᱟᱭᱛᱮ ᱾</string>
@@ -144,8 +153,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">ᱱᱟᱶᱟ ᱱᱤᱡᱮᱨᱟᱜ ᱴᱮᱵᱽ</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫ ᱥᱚᱴᱠᱚᱴ</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫ ᱥᱚᱴᱠᱚᱴ</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -190,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">ᱮᱰ-ᱟᱸᱱᱥ</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">ᱮᱠᱥᱴᱮᱱᱥᱚᱱᱠᱚ</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">ᱮᱠᱮᱴᱮᱱᱮᱚᱱ ᱠᱚ ᱢᱮᱱᱟᱡᱽ ᱢᱮ</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">ᱟᱨᱦᱚᱸ ᱰᱷᱮᱨ ᱮᱠᱥᱴᱮᱱᱥᱚᱱ ᱯᱟᱱᱛᱮ ᱢᱮ</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">ᱠᱷᱟᱛᱟ ᱵᱤᱵᱨᱚᱬ</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -208,18 +223,26 @@
<string name="browser_menu_open_in_regular_tab">ᱱᱟᱶᱟ ᱴᱮᱵᱽ ᱨᱮ ᱡᱷᱤᱡᱽ ᱢᱮ</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">ᱚᱲᱟᱜ ᱥᱠᱨᱤᱱ ᱨᱮ ᱥᱮᱞᱮᱫᱽ ᱢᱮ</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">ᱚᱲᱟᱜ ᱥᱠᱨᱤᱱ ᱨᱮ ᱥᱮᱞᱮᱫᱽ ᱢᱮ…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">ᱵᱚᱦᱟᱞ ᱢᱮ</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">ᱨᱤᱥᱭᱝᱠ</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">ᱥᱟᱦᱴᱟ ᱨᱮ ᱥᱮᱸᱫᱽᱨᱟᱭ ᱢᱮ</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">ᱥᱟᱦᱴᱟ ᱨᱮ ᱯᱟᱱᱛᱮ ᱢᱮ…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">ᱥᱟᱦᱴᱟ ᱛᱚᱨᱡᱚᱢᱟᱭ ᱢᱮ</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">ᱛᱩᱢᱟᱹᱞ ᱨᱮ ᱥᱟᱺᱪᱟᱣ ᱢᱮ…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">ᱛᱩᱢᱟᱹᱞ ᱨᱮ ᱥᱟᱺᱪᱟᱣ ᱢᱮ</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">ᱦᱟᱹᱴᱤᱧ</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">ᱦᱟᱹᱴᱤᱧ ᱢᱮ…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">%1$s ᱨᱮ ᱡᱷᱤᱡᱽ ᱢᱮ</string>
@@ -247,9 +270,46 @@
<string name="browser_menu_customize_home_1">ᱚᱲᱟᱜᱥᱟᱦᱴᱟ ᱠᱩᱥᱤᱛᱮ ᱫᱚᱦᱚᱭ ᱢᱮ</string>
<!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
- <string name="browser_menu_sign_in" tools:ignore="UnusedResources">ᱵᱚᱞᱚᱱ ᱥᱩᱦᱤ</string>
- <!-- Browser menu caption label for the "Sign in" browser menu item described in browser_menu_sign_in -->
- <string name="browser_menu_sign_in_caption" tools:ignore="UnusedResources">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ, ᱴᱮᱵᱽ ᱟᱨ ᱟᱨᱦᱚᱸ ᱟᱭᱢᱟ ᱡᱤᱱᱤᱥᱠᱚ ᱟᱹᱭᱩᱨ ᱢᱤᱫ ᱢᱮ</string>
+ <string name="browser_menu_sign_in">ᱵᱚᱞᱚᱱ ᱥᱩᱦᱤ</string>
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ, ᱴᱮᱵᱽ ᱟᱨ ᱟᱨᱦᱚᱸ ᱟᱭᱢᱟ ᱡᱤᱱᱤᱥᱠᱚ ᱟᱹᱭᱩᱨ ᱢᱤᱫ ᱢᱮ</string>
+
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">ᱥᱭᱝᱠ ᱞᱟᱹᱜᱤᱫ ᱵᱚᱞᱚᱱ ᱥᱩᱦᱤ ᱢᱮ</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">ᱟᱹᱭᱩᱨ ᱢᱤᱫ ᱛᱷᱩᱢ ᱠᱟᱱᱟ</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">ᱱᱟᱶᱟ ᱱᱤᱡᱮᱨᱟᱠ ᱴᱮᱵᱽ</string>
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">%1$s ᱨᱮ ᱱᱟᱶᱟ</string>
+
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">ᱰᱮᱥᱠᱴᱚᱯ ᱥᱟᱭᱤᱴ ᱛᱮ ᱪᱟᱞᱟᱜ ᱢᱮ</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">ᱦᱟᱹᱛᱤᱭᱟᱹᱨ ᱠᱚ</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">ᱥᱟᱺᱪᱟᱣ ᱢᱮ</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">ᱱᱚᱶᱟ ᱥᱟᱦᱴᱟ ᱵᱩᱩᱠᱢᱟᱨᱠ ᱢᱮ</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">ᱵᱩᱠᱢᱟᱨᱠ ᱥᱟᱯᱲᱟᱣ ᱢᱮ</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">PDF ᱞᱮᱠᱷᱟ ᱥᱟᱺᱪᱟᱣ ᱢᱮ…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">ᱯᱟᱲᱦᱟᱣ ᱧᱮᱞᱡᱚᱝ ᱞᱮᱠᱷᱟ ᱮᱢ ᱪᱷᱚᱭ ᱢᱮ</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">ᱯᱟᱲᱦᱟᱣ ᱧᱮᱞᱡᱚᱝ ᱞᱮᱠᱷᱟ ᱵᱚᱸᱫᱚᱭ ᱢᱮ</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">ᱥᱟᱦᱴᱟ ᱛᱚᱨᱡᱚᱢᱟᱭ ᱢᱮ…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s ᱛᱮ ᱛᱚᱨᱡᱚᱢᱟ ᱠᱟᱱᱟ</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">ᱪᱷᱟᱯᱟ…</string>
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
@@ -347,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">ᱯᱷᱚᱭᱟᱨᱯᱷᱚᱠᱥ ᱡᱟᱹᱯᱛᱤ ᱠᱷᱚᱵᱚᱨ ᱾</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">ᱟᱞᱮᱭᱟᱜ ᱱᱤᱥᱚᱱ ᱠᱷᱚᱵᱚᱨ ᱨᱮ ᱰᱷᱮᱨ ᱡᱤᱱᱤᱥ ᱥᱮᱬᱟᱭ ᱢᱮ</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">ᱟᱢ ᱴᱷᱤᱠ ᱨᱮ ᱫᱚᱦᱚᱢᱮᱪᱷᱚ ᱞᱟᱹᱜᱤᱫ ᱠᱩᱥᱤᱭᱟᱜᱼᱟ ᱞᱮ</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -556,6 +614,10 @@
<string name="preferences_account_sync_error">ᱥᱭᱝᱠ ᱠᱚ ᱪᱟᱹᱞᱩ ᱫᱚᱦᱚ ᱞᱟᱹᱜᱤᱫ ᱫᱩᱦᱲᱟᱹ ᱡᱩᱰᱟᱹᱣ</string>
<!-- Preference for language -->
<string name="preferences_language">ᱯᱟᱹᱨᱥᱤ</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">ᱛᱚᱨᱡᱚᱢᱟ</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">ᱛᱚᱨᱡᱚᱢᱟᱠᱚ</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">ᱥᱟᱹᱠᱷᱤᱭᱟᱹᱛ ᱠᱩᱥᱤᱭᱟᱜ ᱠᱚ</string>
<!-- Preference for data collection -->
@@ -623,6 +685,16 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">ᱢᱟᱱᱟ ᱜᱮᱭᱟ</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">ᱞᱟᱹᱠᱛᱤ</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">ᱢᱚᱱᱮᱛᱮᱭᱟᱜ</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">ᱡᱷᱚᱛᱚ ᱥᱟᱭᱤᱴ ᱞᱟᱹᱜᱤᱫ ᱮᱢᱪᱷᱚᱭ ᱢᱮ</string>
+ <!-- The subtitle for the allow for all sites preference toggle -->
+ <string name="addons_permissions_allow_for_all_sites_subtitle" tools:ignore="UnusedResources">ᱟᱢ ᱡᱩᱫᱤ ᱱᱚᱶᱟ ᱮᱠᱥᱴᱮᱱᱥᱚᱱ ᱪᱮᱛᱟᱱ ᱨᱮ ᱵᱷᱚᱨᱥᱟ ᱮᱫ ᱠᱷᱟᱱ, ᱟᱢ ᱫᱚ ᱡᱷᱚᱛᱚ ᱣᱮᱵᱽᱥᱟᱭᱤᱴ ᱨᱮ ᱦᱚᱠᱮᱢ ᱮᱢ ᱫᱟᱲᱮ ᱟᱭᱟ ᱾</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
<string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">ᱠᱟᱹᱥᱴᱚᱢ ᱮᱰᱰᱼᱚᱱ ᱛᱩᱢᱟᱹᱞ</string>
@@ -646,7 +718,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">ᱦᱮᱡ ᱨᱩᱣᱟᱹᱲᱚᱜ ᱢᱮ</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">ᱱᱤᱛᱚᱜᱼᱟᱜ ᱵᱩᱠᱢᱟᱨᱠ ᱠᱚ</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">ᱱᱤᱛᱚᱜᱼᱟᱜ ᱵᱩᱠᱢᱟᱨᱠ ᱠᱚ</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">ᱵᱩᱠᱢᱟᱨᱠᱠᱚ</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">ᱱᱤᱛᱚᱜᱟᱜ ᱦᱤᱨᱤᱭᱟᱜ</string>
@@ -741,8 +815,6 @@
<string name="preferences_sync_history">ᱱᱟᱜᱟᱢ</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">ᱵᱩᱠᱢᱟᱨᱠ ᱠᱚ</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱵᱚᱞᱚᱱ ᱠᱚ</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ</string>
<!-- Preference for syncing tabs -->
@@ -768,8 +840,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s on %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">ᱜᱚᱱᱚᱝ ᱦᱚᱨᱟᱠᱚ</string>
<!-- Preference for syncing addresses -->
@@ -786,6 +856,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">%s ᱠᱷᱚᱱ ᱴᱮᱵᱽ</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s ᱴᱮᱵᱽᱠᱚ ᱵᱚᱸᱫ ᱠᱟᱱᱟ : %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">ᱱᱤᱛᱚᱜᱽᱼᱟᱜ ᱵᱚᱸᱫᱚᱼᱟᱜ ᱴᱮᱵᱽ ᱠᱚ ᱫᱮᱠᱷᱟᱣ ᱢᱮ</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">ᱪᱷᱟᱰᱟ ᱠᱚ</string>
@@ -1719,12 +1797,8 @@
<string name="add_to_homescreen_description_2">ᱟᱢ ᱞᱚᱜᱚᱱ ᱵᱽᱨᱟᱣᱩᱡᱽ ᱟᱨ ᱮᱯ ᱞᱮᱠᱷᱟᱱ ᱢᱟᱨᱠᱷᱤ ᱤᱫᱤ ᱞᱟᱹᱜᱤᱫ ᱣᱮᱵᱥᱟᱭᱤᱴ ᱫᱚ ᱥᱟᱫᱷᱚᱱ ᱨᱮᱭᱟᱜ ᱚᱲᱟᱜ ᱥᱠᱨᱤᱱ ᱨᱮ ᱥᱮᱞᱮᱫᱽ ᱫᱟᱲᱮᱟᱜᱼᱟᱢ ᱾</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱵᱚᱞᱚᱱ ᱠᱚ ᱟᱨ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱞᱚᱜᱤᱱ ᱠᱚ ᱟᱨ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ ᱥᱟᱺᱪᱟᱣ ᱢᱮ</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ ᱥᱟᱺᱪᱟᱣ ᱢᱮ</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">ᱥᱟᱺᱪᱟᱣ ᱞᱟᱹᱜᱤᱫᱛᱮ ᱠᱩᱠᱞᱤ</string>
@@ -1740,46 +1814,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">ᱟᱢᱟᱜ ᱥᱟᱫᱷᱚᱱ ᱨᱮ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱟᱨ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱯᱩᱨᱟᱹᱣ ᱢᱮ ᱾</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱵᱚᱞᱚ ᱥᱮᱞᱮᱫ ᱢᱮ</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱥᱮᱞᱮᱫ ᱢᱮ</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱞᱚᱜᱤᱱ ᱠᱚ ᱥᱭᱝᱠ ᱢᱮ</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽᱠᱚ ᱟᱹᱭᱩᱨ ᱢᱤᱫ ᱢᱮ</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱡᱷᱚᱛᱚ ᱥᱟᱫᱷᱚᱱ ᱵᱷᱤᱛᱨᱤ ᱨᱮ ᱵᱚᱞᱚ ᱠᱚ ᱥᱭᱝᱠ ᱢᱮ</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">ᱡᱷᱚᱛᱚ ᱥᱟᱫᱷᱚᱱ ᱵᱷᱤᱛᱨᱤ ᱨᱮ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱟᱹᱭᱩᱨ ᱢᱤᱫ ᱢᱮ</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱥᱟᱺᱪᱟᱣᱟᱠᱟᱱ ᱞᱚᱜᱤᱱ ᱠᱚ</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">ᱥᱟᱧᱪᱟᱣ ᱠᱟᱱ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱠᱚ</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱞᱚᱜᱤᱱ ᱚᱠᱟ %s ᱨᱮ ᱥᱟᱺᱪᱟᱣ ᱟᱨ ᱥᱭᱝᱠ ᱥᱟᱱᱟᱢ ᱠᱟᱱᱟ ᱚᱱᱟ ᱠᱚ ᱱᱚᱰᱮ ᱫᱮᱠᱷᱟᱣᱜᱼᱟ ᱾</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">ᱟᱢ %s ᱨᱮ ᱚᱞ ᱟᱠᱟᱱ ᱥᱮ ᱟᱹᱭᱩᱨ ᱢᱤᱫ ᱟᱠᱟᱱ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ ᱱᱚᱸᱰᱮ ᱞᱤᱥᱴᱤ ᱟ ᱾ ᱟᱢ ᱡᱟᱦᱟᱸᱱ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱮᱢ ᱥᱟᱧᱪᱟᱣ ᱟ ᱚᱱᱟ ᱠᱚᱫᱚ ᱫᱟᱱᱟᱝᱟᱜᱼᱟ ᱾</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱥᱭᱝᱠ ᱵᱟᱵᱚᱛ ᱡᱟᱹᱥᱛᱤ ᱵᱟᱰᱟᱭ ᱢᱮ ᱾</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">ᱥᱭᱝᱠ ᱵᱟᱵᱚᱛ ᱰᱷᱮᱨ ᱵᱟᱰᱟᱭ ᱢᱮ</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">ᱪᱷᱟᱰᱟ ᱠᱚ</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱵᱚᱞᱚᱱ ᱥᱩᱦᱤ ᱟᱨ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ ᱡᱟ ᱵᱟᱝ ᱥᱟᱺᱪᱟᱣ ᱠᱟᱱᱟ ᱚᱱᱟᱠᱩ ᱱᱚᱰᱮ ᱩᱫᱩᱜᱚᱣᱟ ᱾</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s ᱫᱚ ᱱᱚᱰᱮ ᱞᱤᱥᱴᱤ ᱠᱟᱱ ᱥᱟᱭᱤᱴᱠᱚᱨᱮ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱵᱟᱭ ᱥᱟᱧᱪᱟᱣ ᱟ ᱾</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱞᱚᱜᱤᱱᱥ ᱟᱨ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱫᱚ ᱱᱚᱶᱟ ᱥᱟᱭᱤᱴ ᱞᱟᱹᱜᱤᱫ ᱵᱟᱝ ᱥᱟᱺᱪᱟᱣᱜᱼᱟ ᱾</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s ᱫᱚ ᱱᱚᱰᱮ ᱢᱮᱱᱟᱜ ᱞᱤᱥᱴᱤ ᱠᱟᱱ ᱥᱟᱭᱤᱴᱠᱚᱨᱮ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱵᱟᱭ ᱥᱟᱧᱪᱟᱣ ᱟ ᱾</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">ᱡᱷᱚᱛᱚ ᱪᱷᱟᱰᱟᱠᱚ ᱢᱮᱴᱟᱣ ᱢᱮ</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱞᱚᱜᱤᱱ ᱠᱚ ᱥᱮᱸᱫᱽᱨᱟᱭ ᱢᱮ</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ ᱫᱮᱠᱷᱟᱣ ᱢᱮ</string>
<!-- The header for the site that a login is for -->
@@ -1808,17 +1863,11 @@
<string name="saved_login_reveal_password">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱫᱮᱠᱷᱟᱣ</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱩᱠᱩ</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱥᱟᱺᱪᱟᱣᱠᱟᱱ ᱵᱚᱞᱚᱱ ᱥᱩᱦᱤ ᱠᱚ ᱧᱮᱞ ᱞᱟᱹᱜᱤᱫ ᱛᱮ ᱚᱱᱞᱚᱠ ᱢᱮ</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">ᱥᱟᱧᱪᱟᱣᱟᱠᱟᱱ ᱠᱟᱰ ᱠᱚ ᱧᱮᱞ ᱞᱟᱹᱜᱤᱫ ᱠᱷᱩᱞᱟᱹᱭ ᱢᱮ</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱟᱢᱟᱜ ᱞᱚᱜᱤᱱ ᱠᱚ ᱟᱨ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ ᱡᱟᱯᱛᱤ ᱢᱮ</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">ᱟᱢᱟᱜ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ ᱨᱩᱠᱷᱤᱭᱟᱹᱭ ᱢᱮ</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱥᱟᱫᱷᱚᱱ ᱠᱩᱞᱩᱯ ᱪᱤᱱᱦᱟᱹ, ᱯᱤᱱ, ᱟᱨ ᱵᱟᱝ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱞᱟᱜᱟᱣᱢᱮ ᱟᱢᱟᱜ ᱥᱟᱺᱪᱟᱣ ᱞᱚᱜᱤᱱ ᱠᱚ ᱮᱢᱟᱱ ᱨᱩᱠᱷᱭᱟ ᱞᱟᱹᱜᱤᱫ ᱡᱩᱫᱤ ᱚᱞᱜᱟ ᱦᱚᱲ ᱴᱷᱮᱱ ᱟᱢᱟᱜ ᱥᱟᱫᱷᱚᱱ ᱛᱟᱦᱮᱸᱱ ᱠᱷᱟᱱ ᱾</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">ᱥᱟᱫᱷᱚᱱ ᱠᱩᱞᱩᱯ ᱪᱤᱱᱦᱟᱹ, ᱯᱤᱱ, ᱟᱨ ᱵᱟᱝ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱟᱢᱟᱜ ᱥᱟᱧᱪᱟᱣ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱠᱚ ᱮᱢᱟᱱ ᱨᱩᱠᱷᱭᱟ ᱞᱟᱹᱜᱤᱫ ᱡᱩᱫᱤ ᱚᱞᱜᱟ ᱦᱚᱲ ᱴᱷᱮᱱ ᱟᱢᱟᱜ ᱥᱟᱫᱷᱚᱱ ᱛᱟᱦᱮᱸᱱ ᱠᱷᱟᱱ ᱾</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">ᱛᱟᱭᱚᱢ ᱛᱮ</string>
@@ -1835,8 +1884,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">ᱢᱟᱲᱟᱝ ᱵᱮᱵᱷᱟᱨᱟᱜ</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱞᱚᱜᱤᱱ ᱢᱮᱱᱭᱩ ᱥᱟᱞᱟᱭ ᱢᱮ</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱢᱮᱱᱩ ᱥᱮᱴ ᱢᱮ</string>
@@ -1846,17 +1893,11 @@
<string name="preferences_autofill">ᱟᱡ ᱛᱮ ᱯᱩᱨᱟᱹᱣ</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">ᱴᱷᱤᱠᱬᱟᱤᱭᱟᱹ</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">ᱜᱚᱱᱚᱝ ᱦᱚᱨᱟᱠᱚ</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱥᱟᱺᱪᱟᱣ ᱟᱨ ᱠᱟᱰ ᱠᱚ ᱟᱡ ᱛᱮ ᱯᱮᱨᱮᱡᱽ ᱢᱮ</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">ᱯᱮᱢᱮᱱᱴ ᱦᱚᱨᱟ ᱥᱟᱧᱪᱟᱣ ᱢᱮ ᱟᱨ ᱯᱮᱨᱮᱪ ᱢᱮ</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱰᱟᱴᱟ ᱫᱚ ᱮᱱᱠᱨᱤᱯᱴᱮᱰ ᱠᱟᱱᱟ</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s ᱫᱚ ᱟᱢ ᱡᱟᱦᱟᱸ ᱥᱟᱧᱪᱟᱣ ᱮᱫ ᱡᱷᱚᱛᱚ ᱛᱚᱨᱠᱟᱠᱚ ᱨᱩᱠᱷᱤᱭᱟᱹ ᱟ</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
@@ -1864,25 +1905,16 @@
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">ᱠᱟᱰ ᱥᱭᱝᱠ ᱢᱮ</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ ᱥᱮᱞᱮᱫᱽ ᱢᱮ</string>
-
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">ᱠᱟᱰ ᱥᱮᱞᱮᱫᱽ ᱢᱮ</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱥᱟᱺᱪᱟᱣ ᱠᱟᱰ ᱠᱚ ᱢᱮᱱᱮᱡᱽ ᱢᱮ</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">ᱠᱟᱰ ᱢᱮᱱᱮᱡᱽ ᱢᱮ</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">ᱴᱷᱤᱠᱬᱟᱹ ᱥᱮᱞᱮᱫ ᱢᱮ</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">ᱴᱷᱤᱠᱬᱟᱹᱤᱭᱟᱹ ᱡᱚᱛᱚᱱ ᱮᱢ</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱴᱷᱤᱬᱟᱹᱤᱭᱟᱹ ᱥᱟᱺᱪᱟᱣ ᱟᱨ ᱟᱡ ᱛᱮ ᱯᱮᱨᱮᱡ ᱢᱮ</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">ᱴᱷᱤᱬᱟᱹᱤᱭᱟᱹ ᱥᱟᱧᱪᱟᱣ ᱟᱨ ᱟᱡ ᱛᱮ ᱯᱮᱨᱮᱡ ᱢᱮ</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱮᱞ, ᱤᱢᱮᱞ ᱟᱨ ᱵᱷᱮᱡᱟ ᱴᱷᱤᱠᱬᱟᱹ ᱞᱮᱠᱷᱟ ᱵᱤᱵᱨᱚᱬ ᱢᱮᱥᱟᱭ ᱢᱮ</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">ᱯᱷᱚᱱ ᱱᱚᱢᱵᱚᱨ ᱟᱨ ᱤᱼᱢᱮᱞ ᱴᱷᱤᱠᱬᱟᱹ ᱥᱮᱞᱮᱫ ᱢᱮᱱᱟᱜᱼᱟ</string>
@@ -1907,8 +1939,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">ᱠᱟᱰ ᱢᱮᱴᱟᱣ ᱢᱮ</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱪᱮᱫ ᱟᱢ ᱜᱚᱴᱟ ᱛᱮ ᱢᱮᱱᱟᱢᱼᱟ ᱱᱚᱶᱟ ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ ᱢᱮᱴᱟᱣ ᱞᱟ.ᱜᱤᱛ ᱛᱮ?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">ᱠᱟᱰ ᱢᱮᱴᱟᱣᱟᱢ ᱥᱮ ?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">ᱢᱮᱴᱟᱣ ᱢᱮ</string>
@@ -1920,44 +1950,34 @@
<string name="credit_cards_cancel_button">ᱵᱟᱹᱰᱨᱟᱹ</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">ᱥᱟᱺᱪᱟᱣ ᱠᱟᱱ ᱠᱟᱰ</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱴᱷᱤᱠ ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ ᱮᱞ ᱟᱫᱮᱨ ᱢᱮ</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">ᱢᱤᱫᱴᱟᱝ ᱴᱷᱤᱠ ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ ᱮᱞ ᱟᱫᱮᱨ ᱢᱮ</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱱᱚᱶᱟ ᱡᱟᱭᱜᱟ ᱯᱮᱨᱮᱡᱽ ᱢᱮ</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">ᱧᱩᱛᱩᱢ ᱥᱮᱞᱮᱫ ᱢᱮ</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">ᱥᱟᱺᱪᱟᱣᱟᱠᱟᱱ ᱠᱟᱰ ᱠᱚ ᱧᱮᱞ ᱞᱟᱹᱜᱤᱫ ᱠᱷᱩᱞᱟᱹᱭ ᱢᱮ</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱟᱢᱟᱜ ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ ᱨᱩᱠᱷᱤᱭᱟᱹᱭ ᱢᱮ</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">ᱟᱢᱟᱜ ᱥᱟᱧᱪᱟᱣ ᱠᱟᱱ ᱜᱚᱱᱚᱝ ᱛᱚᱨᱠᱟᱠᱚ ᱨᱩᱠᱷᱤᱭᱟᱹᱭ ᱢᱮ</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱥᱟᱫᱷᱚᱱ ᱠᱩᱞᱩᱯ ᱪᱤᱱᱦᱟᱹ, ᱯᱤᱱ, ᱟᱨ ᱵᱟᱝ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱟᱢᱟᱜ ᱥᱟᱺᱪᱟᱣ ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ ᱠᱚ ᱮᱢᱟᱱ ᱨᱩᱠᱷᱭᱟ ᱞᱟᱹᱜᱤᱫ ᱡᱩᱫᱤ ᱚᱞᱜᱟ ᱦᱚᱲ ᱴᱷᱮᱱ ᱟᱢᱟᱜ ᱥᱟᱫᱷᱚᱱ ᱛᱟᱦᱮᱸᱱ ᱠᱷᱟᱱ ᱾</string>
+ <string name="credit_cards_warning_dialog_message_3">ᱥᱟᱫᱷᱚᱱ ᱠᱩᱞᱩᱯ ᱪᱤᱱᱦᱟᱹ, ᱯᱤᱱ, ᱟᱨ ᱵᱟᱝ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫ ᱟᱢᱟᱜ ᱥᱟᱧᱪᱟᱣ ᱜᱚᱱᱚᱝ ᱛᱚᱨᱠᱟᱠᱚ ᱮᱢᱟᱱ ᱨᱩᱠᱷᱭᱟ ᱞᱟᱹᱜᱤᱫ ᱡᱩᱫᱤ ᱚᱞᱜᱟ ᱦᱚᱲ ᱴᱷᱮᱱ ᱟᱢᱟᱜ ᱥᱟᱫᱷᱚᱱ ᱛᱟᱦᱮᱸᱱ ᱠᱷᱟᱱ ᱾</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">ᱱᱤᱛᱚᱜ ᱥᱟᱡᱟᱣ ᱢᱮ</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_later">ᱛᱟᱭᱚᱢ ᱛᱮ</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">ᱟᱢᱟᱜ ᱥᱟᱫᱷᱚᱱ ᱚᱱᱞᱚᱠ ᱢᱮ</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱫᱚᱦᱚ ᱠᱟᱱ ᱠᱨᱮᱰᱤᱴ ᱠᱟᱰ ᱵᱤᱵᱨᱚᱬ ᱠᱷᱩᱞᱟᱹᱭ ᱢᱮ</string>
+ <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
+ <string name="credit_cards_biometric_prompt_unlock_message_2">ᱥᱟᱧᱪᱟᱣ ᱠᱟᱱ ᱜᱚᱱᱚᱝ ᱛᱚᱨᱠᱟ ᱵᱮᱵᱷᱟᱨ ᱞᱟᱹᱜᱤᱫ ᱠᱷᱤᱩᱞᱟᱹᱭ ᱢᱮ</string>
<!-- Title of the "Add address" screen -->
<string name="addresses_add_address">ᱴᱷᱤᱠᱬᱟᱹ ᱥᱮᱞᱮᱫ ᱢᱮ</string>
<!-- Title of the "Edit address" screen -->
<string name="addresses_edit_address">ᱴᱷᱤᱠᱬᱟᱹ ᱥᱟᱯᱲᱟᱣ ᱢᱮ</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">ᱴᱷᱤᱠᱬᱟᱹᱤᱭᱟᱹ ᱡᱚᱛᱚᱱ ᱮᱢ</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">ᱯᱩᱭᱞᱩ ᱧᱩᱛᱩᱢ</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">ᱛᱟᱞᱟ ᱧᱩᱛᱩᱢ</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">ᱢᱩᱪᱟᱹᱫ ᱧᱩᱛᱩᱢ</string>
+ <!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
+ <string name="addresses_name">ᱧᱩᱛᱩᱢ</string>
<!-- The header for the street address of an address -->
<string name="addresses_street_address">ᱥᱚᱰᱚᱠ ᱴᱷᱤᱠᱬᱟᱹ</string>
<!-- The header for the city of an address -->
@@ -1982,7 +2002,7 @@
<string name="addressess_delete_address_button">ᱴᱷᱤᱠᱬᱟᱹ ᱢᱮᱴᱟᱣ ᱢᱮ</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱪᱮᱫ ᱟᱢ ᱜᱚᱴᱟ ᱛᱮ ᱢᱮᱱᱟᱢᱼᱟ ᱱᱚᱶᱟ ᱴᱷᱤᱠᱬᱟᱹ ᱢᱮᱴᱟᱣ ᱞᱟ.ᱜᱤᱛ ᱛᱮ?</string>
+ <string name="addressess_confirm_dialog_message_2">ᱱᱚᱶᱟ ᱴᱷᱤᱠᱬᱟᱹ ᱢᱮᱴᱟᱣᱟ ᱥᱮ ?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">ᱢᱮᱴᱟᱣ ᱢᱮ</string>
<!-- The text for the negative button on "Delete address" dialog -->
@@ -2080,32 +2100,34 @@
<string name="login_menu_delete_button">ᱢᱮᱴᱟᱣ ᱢᱮ</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">ᱥᱟᱯᱲᱟᱣ</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱪᱮᱫ ᱟᱢ ᱜᱚᱴᱟ ᱢᱮᱱᱟᱢᱼᱟ ᱱᱚᱶᱟ ᱞᱚᱜᱤᱱ ᱢᱮᱴᱟᱣ ᱞᱟ.ᱜᱤᱫ ᱛᱮ?</string>
+ <!-- Message in delete confirmation dialog for password -->
+ <string name="login_deletion_confirmation_2">ᱪᱮᱫ ᱟᱢ ᱜᱚᱴᱟ ᱛᱮ ᱢᱮᱱᱟᱢᱼᱟ ᱱᱚᱶᱟ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱢᱮᱴᱟᱣ ᱞᱟ.ᱜᱤᱛ ᱛᱮ?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">ᱢᱮᱴᱟᱣ ᱢᱮ</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">ᱵᱟᱹᱰᱨᱟᱹ</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱮᱴᱟᱜᱟᱜ ᱠᱚ ᱞᱚᱜᱤᱱ</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱣᱤᱵ ᱴᱷᱤᱠᱬᱟᱹ ᱞᱚᱜᱤᱱ ᱵᱚᱞᱚ ᱞᱟᱹᱜᱤᱫ ᱥᱟᱯᱲᱟᱣ ᱚᱞ ᱡᱟᱭᱜᱟ ᱾</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱞᱚᱜᱤᱱ ᱞᱟᱹᱜᱤᱫ ᱥᱟᱯᱲᱟᱣ ᱚᱞ ᱡᱟᱭᱜᱟ ᱾</string>
+ <!-- The saved password options menu description. -->
+ <string name="login_options_menu_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫ ᱨᱮᱭᱟᱜ ᱵᱟᱪᱷᱟᱣ ᱠᱚ</string>
+ <!-- The editable text field for a website address. -->
+ <string name="saved_login_hostname_description_3">ᱣᱤᱵᱽ ᱴᱷᱤᱠᱬᱟᱹ ᱞᱟᱹᱜᱤᱫ ᱥᱟᱯᱲᱟᱣ ᱚᱞ ᱡᱟᱭᱜᱟ ᱾</string>
+ <!-- The editable text field for a username. -->
+ <string name="saved_login_username_description_3">ᱵᱤᱵᱷᱟᱨᱤᱭᱟᱹᱧᱩᱛᱩᱢ ᱞᱟᱹᱜᱤᱫ ᱥᱟᱯᱲᱟᱣ ᱚᱞ ᱡᱟᱭᱜᱟ ᱾</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱞᱚᱜᱤᱱ ᱞᱟᱹᱜᱤᱫ ᱥᱟᱯᱲᱟᱣ ᱚᱞ ᱡᱟᱭᱜᱟ ᱾</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱞᱚᱜᱤᱱ ᱵᱚᱫᱚᱞ ᱠᱚ ᱥᱟᱺᱪᱟᱣ ᱢᱮ ᱾</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱥᱟᱯᱲᱟᱣ</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱱᱟᱶᱟ ᱵᱚᱞᱚ ᱥᱮᱞᱮᱫ ᱢᱮ</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱨᱮᱭᱟᱜ ᱫᱚᱨᱠᱟᱨ ᱢᱮᱱᱟᱜ-ᱟ</string>
+ <string name="saved_login_password_description_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫ ᱞᱟᱹᱜᱤᱫ ᱥᱟᱯᱲᱟᱣ ᱚᱞ ᱡᱟᱭᱜᱟ ᱾</string>
+ <!-- The button description to save changes to an edited password. -->
+ <string name="save_changes_to_login_2">ᱵᱚᱫᱚᱞ ᱠᱚ ᱥᱟᱺᱪᱟᱣ ᱢᱮ ᱾</string>
+ <!-- The page title for editing a saved password. -->
+ <string name="edit_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱥᱟᱯᱲᱟᱣ ᱢᱮ</string>
+ <!-- The page title for adding new password. -->
+ <string name="add_login_2">ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱥᱮᱞᱮᱫ ᱢᱮ</string>
+ <!-- Error text displayed underneath the password field when it is in an error case. -->
+ <string name="saved_login_password_required_2">ᱢᱤᱫᱴᱟᱹᱝ ᱥᱟᱵᱟᱫ ᱟᱫᱮᱨ ᱢᱮ</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱧᱩᱛᱩᱢ ᱫᱚᱨᱠᱟᱨ</string>
+ <string name="saved_login_username_required_2">ᱢᱤᱫᱴᱟᱹᱝ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱧᱩᱛᱩᱢ ᱟᱫᱮᱨ ᱢᱮ</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">ᱦᱚᱥᱴᱧᱩᱛᱩᱢ ᱫᱚᱨᱠᱟᱨ ᱠᱟᱱᱟ</string>
+ <!-- The error message in add login view when hostname field is blank. -->
+ <string name="saved_login_hostname_required_2" tools:ignore="UnusedResources">ᱢᱤᱫᱴᱟᱹᱝ ᱣᱮᱵᱽ ᱴᱷᱤᱠᱬᱟᱹ ᱟᱫᱮᱨ ᱢᱮ</string>
<!-- Voice search button content description -->
<string name="voice_search_content_description">ᱨᱚᱲ ᱥᱮᱸᱫᱽᱨᱟ</string>
@@ -2200,6 +2222,9 @@
<!-- Title for search suggestions when the default search suggestion engine is anything other than Google. The first parameter is default search engine name. -->
<string name="other_default_search_engine_suggestion_header">%s ᱥᱮᱸᱫᱽᱨᱟᱭ ᱢᱮ</string>
+ <!-- Default browser experiment -->
+ <!-- Default browser card title -->
+ <string name="default_browser_experiment_card_title">ᱟᱢᱟᱜ ᱢᱩᱞ ᱵᱽᱨᱟᱣᱡᱚᱨ ᱛᱮ ᱩᱪᱟᱹᱲᱚᱜ ᱢᱮ</string>
<!-- Default browser card text -->
<string name="default_browser_experiment_card_text">Firefox ᱟᱡ ᱛᱮ ᱠᱷᱩᱞᱟᱹ ᱪᱷᱚ ᱞᱟᱹᱜᱤᱫ ᱣᱮᱵᱥᱟᱭᱤᱴ, ᱤᱢᱮᱞ, ᱟᱨ ᱢᱮᱥᱮᱡᱽ ᱨᱮᱭᱟᱜ ᱞᱤᱝᱠ ᱥᱮᱴ ᱢᱮ ᱾ </string>
@@ -2237,6 +2262,85 @@
<!-- Snackbar button text to navigate to telemetry settings.-->
<string name="experiments_snackbar_button">ᱥᱟᱡᱟᱣ ᱴᱷᱮᱱ ᱪᱟᱞᱟᱜ ᱢᱮ</string>
+ <!-- Review quality check feature-->
+ <!-- Name for the review quality check feature used as title for the panel. -->
+ <string name="review_quality_check_feature_name_2">ᱫᱩᱦᱲᱟᱹ ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣᱤᱭᱟᱹ</string>
+ <!-- Summary for grades A and B for review quality check adjusted grading. -->
+ <string name="review_quality_check_grade_a_b_description">ᱴᱷᱤᱠ ᱵᱟᱛᱟᱣᱟᱜᱠᱚ</string>
+ <!-- Summary for grade C for review quality check adjusted grading. -->
+ <string name="review_quality_check_grade_c_description">ᱴᱷᱤᱠ ᱵᱟᱛᱟᱣᱟᱜ ᱟᱨ ᱵᱤᱱᱥᱨᱚᱛ ᱢᱮᱥᱟᱢᱤᱥᱤ ᱧᱮᱞᱵᱤᱲᱟᱹᱣᱟᱜᱠᱚ</string>
+ <!-- Summary for grades D and F for review quality check adjusted grading. -->
+ <string name="review_quality_check_grade_d_f_description">ᱵᱤᱱᱥᱨᱚᱛ ᱧᱮᱞᱵᱤᱲᱟᱹᱣ</string>
+ <!-- Text for title presenting the reliability of a product's reviews. -->
+ <string name="review_quality_check_grade_title">ᱱᱚᱶᱟ ᱧᱮᱞᱵᱤᱲᱟᱹᱣᱠᱚ ᱛᱤᱱᱟᱹᱜ ᱵᱷᱚᱨᱥᱟ ᱫᱮᱲᱮᱭᱟᱜᱼᱟᱢ ?</string>
+ <!-- Title for when the rating has been updated by the review checker -->
+ <string name="review_quality_check_adjusted_rating_title">ᱨᱮᱴᱤᱝ ᱥᱚᱢᱚᱡᱚᱥ ᱮᱱᱟ</string>
+ <!-- Description for a product's adjusted star rating. The text presents that the product's reviews which were evaluated as unreliable were removed from the adjusted rating. -->
+ <string name="review_quality_check_adjusted_rating_description_2">ᱵᱷᱚᱨᱥᱟᱡᱚᱱᱚᱠ ᱧᱮᱞᱵᱤᱲᱟᱹᱣ ᱪᱮᱛᱟᱱ ᱨᱮ</string>
+ <!-- Title for list of highlights from a product's review emphasizing a product's important traits. -->
+ <string name="review_quality_check_highlights_title">ᱱᱤᱛᱚᱜᱟᱜ ᱧᱮᱞᱵᱤᱲᱟᱹᱣ ᱠᱷᱚᱱ ᱛᱤᱱᱟᱹᱜ ᱜᱟᱱ ᱪᱤᱱᱦᱟᱹᱦᱟᱜ</string>
+ <!-- Title for section explaining how we analyze the reliability of a product's reviews. -->
+ <string name="review_quality_check_explanation_title">ᱟᱞᱮ ᱫᱚ ᱧᱮᱞᱵᱤᱲᱟᱹᱣᱟᱜ ᱜᱩᱱ ᱫᱚ ᱪᱮᱫ ᱞᱮᱠᱷᱟ ᱞᱮ ᱵᱟᱲᱟᱭ ᱮᱫᱟ</string>
+ <!-- Paragraph explaining how we analyze the reliability of a product's reviews. First parameter is the Fakespot product name. In the phrase "Fakespot by Mozilla", "by" can be localized. Does not need to stay by. -->
+ <string name="review_quality_check_explanation_body_reliability">Mozilla ᱯᱟᱦᱴᱟ ᱠᱷᱚᱱ %s ᱠᱷᱚᱱ AI ᱴᱮᱠᱱᱚᱞᱚᱡᱤ ᱵᱮᱵᱷᱟᱨ ᱠᱟᱛᱮᱜ ᱟᱞᱮ ᱯᱨᱚᱰᱚᱠᱴ ᱨᱤᱵᱷᱤᱭᱩ ᱨᱮᱱᱟᱜ ᱥᱟᱹᱨᱤᱜᱟᱱᱤ ᱧᱮᱞ ᱵᱤᱰᱟᱹᱣᱜ ᱮᱫᱟ ᱞᱮ ᱾ ᱱᱚᱶᱟ ᱫᱚ ᱧᱮᱞ ᱵᱤᱰᱟᱣᱜ ᱜᱩᱱ ᱵᱟᱲᱟᱭ ᱪᱷᱚ ᱨ ᱜᱚᱲᱚ ᱮᱢ ᱫᱟᱲᱮᱭᱟᱢᱟ, ᱯᱨᱚᱰᱚᱠᱴ ᱨᱮᱭᱟᱜ ᱢᱩᱞ ᱜᱩᱱ ᱵᱟᱵᱚᱛ ᱫᱚ ᱵᱟᱝᱟ ᱾</string>
+ <!-- Paragraph explaining the grading system we use to classify the reliability of a product's reviews. -->
+ <string name="review_quality_check_info_review_grade_header"><![CDATA[ᱟᱞᱮ ᱫᱚ ᱯᱨᱚᱰᱚᱠᱴ ᱨᱮᱭᱟᱜ ᱧᱮᱞ ᱵᱤᱰᱟᱣᱜ ᱫᱚ <b>ᱪᱤᱠᱤ ᱜᱽᱨᱮᱰ</b> A ᱠᱷᱚᱱ F ᱫᱷᱟᱹᱵᱤᱡ ᱞᱮ ᱮᱢ ᱮᱫᱟ ᱾]]></string>
+ <!-- Text for learn more caption presenting a link with information about review quality. First parameter is for clickable text defined in review_quality_check_info_learn_more_link. -->
+ <string name="review_quality_check_info_learn_more">%s ᱵᱟᱵᱚᱛ ᱰᱷᱮᱨ ᱵᱟᱰᱟᱭ ᱢᱮ ᱾</string>
+ <!-- Clickable text that links to review quality check SuMo page. First parameter is the Fakespot product name. -->
+ <string name="review_quality_check_info_learn_more_link_2">%s ᱫᱚ ᱧᱮᱞᱵᱤᱲᱟᱹᱣᱟᱜ ᱜᱩᱱ ᱫᱚ ᱪᱮᱫ ᱞᱮᱠᱷᱟ ᱵᱟᱲᱟᱭ ᱮᱫᱟ</string>
+ <!-- Text for title of settings section. -->
+ <string name="review_quality_check_settings_title">ᱥᱟᱡᱟᱣᱠᱚ</string>
+ <!-- Text for label for switch preference to show recommended products from review quality check settings section. -->
+ <string name="review_quality_check_settings_recommended_products">ᱫᱩᱦᱲᱟᱹ ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣᱤᱭᱟᱹ ᱨᱮ ᱫᱷᱟᱶᱨᱟ ᱫᱮᱠᱷᱟᱣ ᱢᱮ</string>
+ <!-- Clickable text that links to review quality check recommended products support article. -->
+ <string name="review_quality_check_settings_recommended_products_learn_more" tools:ignore="UnusedResources">ᱰᱷᱮᱨ ᱥᱮᱬᱟᱭ ᱢᱮ</string>
+ <!-- Text for turning sidebar off button from review quality check settings section. -->
+ <string name="review_quality_check_settings_turn_off">ᱫᱩᱦᱲᱟᱹ ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣᱤᱭᱟᱹ ᱵᱚᱸᱫᱚᱭ ᱢᱮ</string>
+ <!-- Text for title of recommended product section. This is displayed above a product image, suggested as an alternative to the product reviewed. -->
+ <string name="review_quality_check_ad_title" tools:ignore="UnusedResources">ᱰᱷᱮᱨ ᱮᱢ ᱧᱮᱞᱟ</string>
+ <!-- Caption for recommended product section indicating this is an ad by Fakespot. First parameter is the Fakespot product name. -->
+ <string name="review_quality_check_ad_caption" tools:ignore="UnusedResources">ᱰᱷᱟᱶᱨᱟᱤᱭᱟᱹ ᱫᱚ %s</string>
+ <!-- Caption for review quality check panel. First parameter is for clickable text defined in review_quality_check_powered_by_link. -->
+ <string name="review_quality_check_powered_by_2">ᱫᱩᱦᱲᱟᱹ ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣᱤᱭᱟᱹ ᱫᱚ %s ᱜᱚᱲᱚ ᱥᱟᱦᱚᱫ ᱮᱢ ᱠᱟᱜᱼᱟᱭ</string>
+ <!-- Clickable text that links to Fakespot.com. First parameter is the Fakespot product name. In the phrase "Fakespot by Mozilla", "by" can be localized. Does not need to stay by. -->
+ <string name="review_quality_check_powered_by_link" tools:ignore="UnusedResources">%s Mozilla ᱛᱮ</string>
+ <!-- Text for title of warning card informing the user that the current analysis is outdated. -->
+ <string name="review_quality_check_outdated_analysis_warning_title" tools:ignore="UnusedResources">ᱧᱮᱞ ᱞᱟᱹᱜᱤᱫ ᱱᱚᱶᱟ ᱵᱤᱵᱨᱚᱬ</string>
+ <!-- Text for button from warning card informing the user that the current analysis is outdated. Clicking this should trigger the product's re-analysis. -->
+ <string name="review_quality_check_outdated_analysis_warning_action" tools:ignore="UnusedResources">ᱱᱤᱛᱚᱜ ᱧᱮᱞ ᱢᱮ</string>
+ <!-- Title for warning card informing the user that the current product does not have enough reviews for a review analysis. -->
+ <string name="review_quality_check_no_reviews_warning_title">ᱩᱱᱟᱹᱜ ᱧᱮᱞᱵᱤᱲᱟᱹᱣ ᱵᱟᱹᱱᱩᱜ ᱠᱟᱫᱟ</string>
+ <!-- Text for body of warning card informing the user that the current product does not have enough reviews for a review analysis. -->
+ <string name="review_quality_check_no_reviews_warning_body">ᱛᱤᱧ ᱡᱷᱚᱜ ᱡᱤᱱᱤᱥ ᱨᱮ ᱡᱟᱹᱥᱛᱤ ᱧᱮᱞᱵᱤᱲᱟᱹᱣ ᱛᱟᱦᱮᱸᱱᱟ, ᱟᱞᱮ ᱫᱚ ᱚᱱᱟ ᱨᱮᱭᱟᱜ ᱜᱩᱱ ᱵᱚᱵᱚᱛ ᱞᱮ ᱢᱮᱱ ᱫᱟᱲᱮᱭᱟᱜᱼᱟ ᱾</string>
+ <!-- Title for warning card informing the user that the current product is currently not available. -->
+ <string name="review_quality_check_product_availability_warning_title">ᱡᱤᱱᱤᱥ ᱫᱚ ᱵᱟᱹᱱᱩᱜ ᱠᱟᱫᱟ</string>
+ <!-- Text for the body of warning card informing the user that the current product is currently not available. -->
+ <string name="review_quality_check_product_availability_warning_body">ᱡᱩᱫᱤ ᱥᱴᱚᱠ ᱛᱮ ᱡᱤᱱᱤᱥ ᱦᱮᱡ ᱞᱮᱠᱷᱟᱢ ᱵᱩᱡᱷᱟᱹᱣ ᱠᱮᱫ ᱠᱷᱟᱱ, ᱟᱞᱮ ᱴᱷᱮᱱ ᱠᱷᱚᱵᱚᱨ ᱮᱢ ᱠᱟᱜ ᱢᱮ ᱟᱞᱮ ᱫᱚ ᱧᱮᱞᱵᱤᱲᱟᱹᱣᱠᱚᱞᱮ ᱧᱮᱞ ᱟ ᱾</string>
+ <!-- Clickable text for warning card informing the user that the current product is currently not available. Clicking this should inform the server that the product is available. -->
+ <string name="review_quality_check_product_availability_warning_action_2">ᱠᱷᱚᱵᱚᱨ ᱢᱮ ᱡᱮ ᱡᱤᱱᱤᱥ ᱫᱚ ᱥᱴᱚᱠ ᱨᱮ ᱦᱮᱡ ᱦᱩᱭ ᱮᱱᱟ</string>
+ <!-- Title for warning card informing the user that the current product's analysis is still processing. The parameter is the percentage progress (0-100%) of the analysis process (e.g. 56%). -->
+ <string name="review_quality_check_analysis_in_progress_warning_title_2">ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣ ᱜᱩᱱ ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣ ᱮᱫᱟ (%s)</string>
+ <!-- Text for body of warning card informing the user that the current product's analysis is still processing. -->
+ <string name="review_quality_check_analysis_in_progress_warning_body">ᱱᱚᱶᱟ ᱫᱚ 60 ᱴᱤᱡ ᱜᱟᱱ ᱚᱠᱛᱚ ᱤᱫᱤᱭᱟᱭ ᱾</string>
+ <!-- Title for info card displayed after the user reports a product is back in stock. -->
+ <string name="review_quality_check_analysis_requested_info_title">ᱠᱷᱚᱵᱚᱨ ᱮᱢ ᱞᱟᱹᱜᱤᱫ ᱟᱹᱰᱤ ᱥᱟᱯᱲᱟᱣ!</string>
+ <!-- Text for body of info card displayed after the user reports a product is back in stock. -->
+ <string name="review_quality_check_analysis_requested_info_body">ᱟᱞᱮ ᱴᱷᱮᱱ ᱫᱚ ᱱᱚᱶᱟ ᱡᱤᱱᱤᱥ ᱵᱚᱵᱛ ᱧᱮᱞ ᱵᱤᱰᱟᱣᱜ 24 ᱴᱟᱲᱟᱝ ᱜᱟᱱ ᱞᱟᱣᱟ ᱞᱮᱭᱟ ᱾ ᱫᱟᱭᱟᱠᱟᱛᱮ ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣ ᱢᱮ ᱾</string>
+ <!-- Title for info card displayed when the user review checker while on a product that Fakespot does not analyze (e.g. gift cards, music). -->
+ <string name="review_quality_check_not_analyzable_info_title">ᱟᱞᱮ ᱫᱚ ᱱᱚᱶᱟ ᱵᱟᱞᱮ ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣ ᱫᱟᱲᱮᱭᱟᱜᱼᱟ </string>
+ <!-- Title for info card displayed when another user reported the displayed product is back in stock. -->
+ <string name="review_quality_check_analysis_requested_other_user_info_title" tools:ignore="UnusedResources">ᱵᱤᱵᱨᱚᱬ ᱞᱚᱜᱚᱱ ᱜᱮ ᱦᱟᱹᱡᱩᱜ ᱠᱟᱱᱟ</string>
+ <!-- Text for body of info card displayed when another user reported the displayed product is back in stock. -->
+ <string name="review_quality_check_analysis_requested_other_user_info_body" tools:ignore="UnusedResources">ᱟᱞᱮ ᱴᱷᱮᱱ ᱫᱚ ᱱᱚᱶᱟ ᱡᱤᱱᱤᱥ ᱵᱚᱵᱛ ᱧᱮᱞ ᱵᱤᱰᱟᱣᱜ 24 ᱴᱟᱲᱟᱝ ᱜᱟᱱ ᱞᱟᱣᱟ ᱞᱮᱭᱟ ᱾ ᱫᱟᱭᱟᱠᱟᱛᱮ ᱧᱮᱞ ᱵᱤᱲᱟᱹᱣ ᱢᱮ ᱾</string>
+ <!-- Title for info card displayed to the user when analysis finished updating. -->
+ <string name="review_quality_check_analysis_updated_confirmation_title" tools:ignore="UnusedResources">ᱯᱚᱨᱚᱠ ᱨᱮᱭᱟᱜ ᱦᱟᱹᱞᱤᱭᱟᱹᱠ ᱴᱷᱤᱠ ᱜᱭᱟ</string>
+ <!-- Text for the action button from info card displayed to the user when analysis finished updating. -->
+ <string name="review_quality_check_analysis_updated_confirmation_action" tools:ignore="UnusedResources">ᱵᱩᱡᱷᱟᱹᱣ ᱠᱮᱫᱟ</string>
+ <!-- Title for error card displayed to the user when an error occurred. -->
+ <string name="review_quality_check_generic_error_title">ᱱᱤᱛᱚᱜ ᱪᱮᱫ ᱦᱚᱸ ᱵᱤᱵᱨᱚᱬ ᱵᱟᱹᱱᱩᱜ ᱠᱟᱫᱼᱟ</string>
+ <!-- Text for body of error card displayed to the user when an error occurred. -->
+ <string name="review_quality_check_generic_error_body">ᱱᱚᱶᱟ ᱮᱴᱠᱮᱴᱚᱬᱮ ᱥᱩᱫᱷᱟᱨ ᱞᱟᱹᱜᱤᱫ ᱠᱟᱹᱢᱤ ᱪᱟᱹᱞᱩ ᱠᱟᱱᱟ ᱾ ᱫᱟᱭᱟᱠᱟᱛᱮ ᱛᱟᱭᱚᱢ ᱛᱮ ᱫᱩᱦᱲᱟᱹ ᱧᱮᱞ ᱦᱟᱹᱡᱩᱜ ᱢᱮ ᱾</string>
<!-- Text for minimize button from highlights card. When clicked the highlights card should reduce its size. -->
<string name="review_quality_check_highlights_show_less">ᱠᱚᱢ ᱫᱮᱠᱷᱟᱣ ᱢᱮ</string>
<!-- Text for maximize button from highlights card. When clicked the highlights card should expand to its full size. -->
@@ -2265,6 +2369,20 @@
<!-- Translations feature-->
+ <!-- Button text on the translations dialog to begin a translation of the website. -->
+ <string name="translations_bottom_sheet_positive_button">ᱛᱚᱨᱡᱚᱢᱟ</string>
+ <!-- Button text on the translations dialog when a translation error appears. -->
+ <string name="translations_bottom_sheet_positive_button_error">ᱫᱩᱦᱲᱟᱹ ᱠᱩᱨᱩᱢᱩᱴᱩᱭ ᱢᱮ</string>
+ <!-- Inactive button text on the translations dialog that indicates a translation is currently in progress. This button will be accompanied by a loading icon. -->
+ <string name="translations_bottom_sheet_translating_in_progress">ᱛᱚᱨᱡᱚᱢᱟᱜ ᱠᱟᱱᱟ</string>
+ <!-- Button content description (not visible, for screen readers etc.) for the translations dialog translate button that indicates a translation is currently in progress. -->
+ <string name="translations_bottom_sheet_translating_in_progress_content_description">ᱛᱚᱨᱡᱚᱢᱟ ᱞᱟᱦᱟ ᱨᱮ ᱢᱮᱱᱟᱜ ᱠᱟᱫᱟ</string>
+ <!-- Default dropdown option when initially selecting a language from the translations dialog language selection dropdown. -->
+ <string name="translations_bottom_sheet_default_dropdown_selection">ᱢᱤᱫᱴᱟᱝ ᱯᱟᱹᱨᱥᱤ ᱵᱟᱪᱷᱟᱣ ᱢᱮ</string>
+ <!-- The title of the warning card informs the user that a translation could not be completed. -->
+ <string name="translation_error_could_not_translate_warning_text">ᱛᱚᱨᱡᱚᱢᱟ ᱡᱷᱚᱜ ᱵᱷᱩᱞ ᱮᱴᱠᱮᱴᱚᱬᱮ ᱦᱩᱭᱮᱱᱟ ᱾ ᱫᱟᱭᱟᱠᱟᱛᱮ ᱫᱩᱦᱲᱟᱹ ᱪᱮᱥᱴᱟᱭ ᱢᱮ ᱾</string>
+
+
<!-- The total tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_total">ᱢᱳᱴ</string>
<!-- The title of the tab creation tool section in Tab Tools. -->
@@ -2277,4 +2395,7 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">ᱵᱟᱝ ᱠᱟᱹᱢᱤ ᱴᱮᱵᱽᱠᱚᱨᱮ ᱥᱮᱞᱮᱫ ᱢᱮ</string>
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">ᱱᱤᱡᱮᱨᱟᱜ ᱴᱮᱵᱽ ᱥᱮᱞᱮᱫᱽ ᱢᱮ</string>
-</resources>
+
+ <!-- Micro survey -->
+
+ </resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-sc/strings.xml b/mobile/android/fenix/app/src/main/res/values-sc/strings.xml
index 799f6bb624..b126355172 100644
--- a/mobile/android/fenix/app/src/main/res/values-sc/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-sc/strings.xml
@@ -36,6 +36,8 @@
<string name="tab_tray_add_new_collection_name">Nòmine</string>
<!-- Label of button in save to collection dialog for selecting a current collection -->
<string name="tab_tray_select_collection">Seletziona una colletzione</string>
+ <!-- Content description for close button while in multiselect mode in tab tray -->
+ <string name="tab_tray_close_multiselect_content_description">Essi de sa modalidade de seletzione mùltiple</string>
<!-- Content description for save to collection button while in multiselect mode in tab tray -->
<string name="tab_tray_collection_button_multiselect_content_description">Sarva is ischedas seletzionadas a sa colletzione</string>
<!-- Content description on checkmark while tab is selected in multiselect mode in tab tray -->
@@ -43,11 +45,19 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Sarvadas de reghente</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Sarvadas de reghente</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Ammustra totu is sinnalibros sarvados</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Ammustra totu is sinnalibros sarvados</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Boga</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Boga</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Sinnalibros</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Ammustra totu is sinnalibros</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Boga</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s est prodotu dae Mozilla.</string>
@@ -101,6 +111,8 @@
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Iscarta</string>
+ <!-- Text for the banner message to tell users about our auto close feature. -->
+ <string name="tab_tray_close_tabs_banner_message">Cunfigura sa serrada in automàticu de is ischedas abertas chi non siant istadas visualizadas in s\'ùrtima die, chida o mese.</string>
<!-- Text for the positive action button to go to Settings for auto close tabs. -->
<string name="tab_tray_close_tabs_banner_positive_button_text">Ammustra is optziones</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
@@ -127,8 +139,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">Ischeda privada noa</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">Curtzadòrgiu pro is craes</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">Craes</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">Curtzadòrgiu pro is craes</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -168,11 +182,17 @@
<!-- Content description (not visible, for screen readers etc.): Stop loading current website -->
<string name="browser_menu_stop">Firma</string>
<!-- Browser menu button that opens the addon manager -->
- <string name="browser_menu_add_ons">Cumplementos</string>
+ <string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Cumplementos</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_extensions">Estensiones</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Gesti is estensiones</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Iscoberi àteras estensiones</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informatziones de su contu</string>
<!-- Text displayed when there are no add-ons to be shown -->
- <string name="no_add_ons">Nissunu cumplementu inoghe</string>
+ <string name="no_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Nissunu cumplementu inoghe</string>
<!-- Browser menu button that sends a user to help articles -->
<string name="browser_menu_help">Agiudu</string>
<!-- Browser menu button that sends a to a the what's new article -->
@@ -187,18 +207,26 @@
<string name="browser_menu_open_in_regular_tab">Aberi in un’ischeda normale</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Agiunghe a s’ischermu printzipale</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Agiunghe a s’ischermu printzipale…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
- <string name="browser_menu_install_on_homescreen">Installa</string>
+ <string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installa</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Torra a sincronizare</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Chirca in sa pàgina</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Chirca in sa pàgina…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Tradue sa pàgina</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Sarva in una colletzione…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Sarva in una colletzione</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Cumpartzi</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Cumpartzi…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Aberi in %1$s</string>
@@ -224,6 +252,50 @@
<string name="browser_menu_customize_home_1">Personaliza sa pàgina printzipale</string>
+ <!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
+ <string name="browser_menu_sign_in">Identìfica·ti</string>
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">Sincroniza craes, ischedas e àteru</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Torra·ti a identificare pro sincronizare</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Sincronizatzione in pàusa</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">Ischeda privada noa</string>
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">Craes</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Nou in %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Càmbia a situ de iscrivania</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Istrumentos</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Sarva</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Agiunghe custa pàgina a is sinnalibros</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Modìfica su sinnalibru</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Sarva comente PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Ativa sa visualizatzione de letura</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Disativa sa visualizatzione de letura</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Tradue sa pàgina…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Traduidu in %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Imprenta…</string>
+
+ <!-- Extensions management fragment -->
+ <!-- Text displayed when there are no extensions to be shown -->
+ <string name="extensions_management_no_extensions">Nissuna estensione inoghe</string>
+
<!-- Browser Toolbar -->
<!-- Content description for the Home screen button on the browser toolbar -->
<string name="browser_toolbar_home">Ischermu printzipale</string>
@@ -234,6 +306,11 @@
<!-- Content description for the translate page toolbar button that opens the translations dialog when no translation has occurred. -->
<string name="browser_toolbar_translate">Tradue sa pàgina</string>
+ <!-- Content description (not visible, for screen readers etc.) for the translate page toolbar button that opens the translations dialog when the page is translated successfully.
+ The first parameter is the name of the language that is displayed in the original page. (For example: English)
+ The second parameter is the name of the language which the page was translated to. (For example: French) -->
+ <string name="browser_toolbar_translated_successfully">Pàgina traduida in %2$s dae: %1$s</string>
+
<!-- Locale Settings Fragment -->
<!-- Content description for tick mark on selected language -->
<string name="a11y_selected_locale_content_description">Lìngua seletzionada</string>
@@ -297,7 +374,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Avisu de riservadesa de Firefox</string>
- <!-- Text for the button to set firefox as default browser on the device -->
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Nos praghet a t’amparare</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
@@ -467,6 +543,10 @@
<string name="preferences_account_sync_error">Torra a connètere pro sighire cun sa sincronizatzione</string>
<!-- Preference for language -->
<string name="preferences_language">Lìngua</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Tradutzione</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Tradutziones</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Sèberu de is datos</string>
<!-- Preference for data collection -->
@@ -493,6 +573,9 @@
<string name="preferences_enable_autocomplete_urls">Cumpletamentu de URL in automàticu</string>
<!-- Preference title for switch preference to show sponsored Firefox Suggest search suggestions -->
<string name="preferences_show_sponsored_suggestions">Cussìgios dae is ispònsors</string>
+ <!-- Summary for preference to show sponsored Firefox Suggest search suggestions.
+ The first parameter is the name of the application. -->
+ <string name="preferences_show_sponsored_suggestions_summary">Sustene %1$s cun propostas isponsorizadas in manera ocasionale</string>
<!-- Preference title for switch preference to show Firefox Suggest search suggestions for web content.
The first parameter is the name of the application. -->
<string name="preferences_show_nonsponsored_suggestions">Cussìgios dae %1$s</string>
@@ -515,9 +598,13 @@
<string name="quit_application">Serrende s’aplicatzione pro aplicare is modìficas…</string>
<!-- Preference for add_ons -->
- <string name="preferences_addons">Cumplementos</string>
+ <string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">Cumplementos</string>
+ <!-- Preference for extensions -->
+ <string name="preferences_extensions">Estensiones</string>
<!-- Preference for installing a local add-on -->
- <string name="preferences_install_local_addon">Installa unu cumplementu dae un’archìviu</string>
+ <string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Installa unu cumplementu dae un’archìviu</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">Installa un\'estensione dae un’archìviu</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Notìficas</string>
@@ -526,9 +613,17 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">Non permìtidu</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Rechestu</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Optzionale</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Permite pro totu is sitos</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
- <string name="preferences_customize_amo_collection">Colletzione de cumplementos personalizada</string>
+ <string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Colletzione de cumplementos personalizada</string>
<!-- Button caption to confirm the add-on collection configuration -->
<string name="customize_addon_collection_ok">AB</string>
<!-- Button caption to abort the add-on collection configuration -->
@@ -541,10 +636,14 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Torra a s’ischeda</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Sinnalibros reghentes</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Sinnalibros reghentes</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Sinnalibros</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Bisitadas de reghente</string>
+ <!-- Title for the customize home screen section with Pocket. -->
+ <string name="customize_toggle_pocket_2">Istòrias chi faghent pensare</string>
<!-- Summary for the customize home screen section with Pocket. The first parameter is product name Pocket -->
<string name="customize_toggle_pocket_summary">Artìculos seletzionados dae %s</string>
<!-- Title for the customize home screen section with sponsored Pocket stories. -->
@@ -571,6 +670,8 @@
<string name="wallpaper_learn_more">Àteras informatziones</string>
<!-- Text for classic wallpapers title. The first parameter is the Firefox name. -->
<string name="wallpaper_classic_title">%s clàssicu</string>
+ <!-- Text for artist series wallpapers title. "Artist series" represents a collection of artist collaborated wallpapers. -->
+ <string name="wallpaper_artist_series_title">Sèrie de artista</string>
<!-- Description text for the artist series wallpapers with learn more link. The first parameter is the learn more string defined in wallpaper_learn_more. "Independent voices" is the name of the wallpaper collection -->
<string name="wallpaper_artist_series_description_with_learn_more">Sa colletzione Boghes indipendentes. %s</string>
<!-- Description text for the artist series wallpapers. "Independent voices" is the name of the wallpaper collection -->
@@ -586,19 +687,31 @@
<!-- Add-ons general availability nimbus message-->
<!-- Title of the Nimbus message for add-ons general availability-->
- <string name="addon_ga_message_title" tools:ignore="UnusedResources">Cumplementos noos a disponimentu</string>
+ <string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">Cumplementos noos a disponimentu</string>
+ <!-- Title of the Nimbus message for extension general availability-->
+ <string name="addon_ga_message_title_2" tools:ignore="UnusedResources">Estensiones noas a disponimentu</string>
<!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
<string name="addon_ga_message_body" tools:ignore="UnusedResources">Controlla is prus de chentu estensiones noas chi ti permitint de personalizare Firefox.</string>
<!-- Button text of the Nimbus message for add-ons general availability. -->
- <string name="addon_ga_message_button" tools:ignore="UnusedResources">Esplora cumplementos</string>
+ <string name="addon_ga_message_button" moz:removedIn="126" tools:ignore="UnusedResources">Esplora cumplementos</string>
+
+ <!-- Button text of the Nimbus message for extensions general availability. -->
+ <string name="addon_ga_message_button_2" tools:ignore="UnusedResources">Esplora is estensiones</string>
- <!-- Add-on process crash dialog to user -->
+ <!-- Extension process crash dialog to user -->
<!-- Title of a dialog shown to the user when enough errors have occurred with addons and they need to be temporarily disabled -->
- <string name="addon_process_crash_dialog_title" tools:ignore="UnusedResources">Is cumplementos sunt istados disativados in manera temporànea</string>
+ <string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">Is cumplementos sunt istados disativados in manera temporànea</string>
+ <!-- Title of the extension crash dialog shown to the user when enough errors have occurred with extensions and they need to be temporarily disabled -->
+ <string name="extension_process_crash_dialog_title">Is estensiones sunt disativadas in manera temporànea</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
- <string name="addon_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Proa torrende a aviare is cumplementos</string>
+ <string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Proa torrende a aviare is cumplementos</string>
+ <!-- Button text on the extension crash dialog to prompt the user to try restarting the extensions but the dialog will reappear if it is unsuccessful again -->
+ <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Proa torrende a aviare is estensiones</string>
<!-- The user will continue with all add-ons disabled -->
- <string name="addon_process_crash_dialog_disable_addons_button_text" tools:ignore="UnusedResources">Sighi cun is cumplementos disativados</string>
+ <string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Sighi cun is cumplementos disativados</string>
+
+ <!-- Button text on the extension crash dialog to prompt the user to continue with all extensions disabled. -->
+ <string name="extension_process_crash_dialog_disable_extensions_button_text">Sighi cun is estensiones disativadas</string>
<!-- Account Preferences -->
<!-- Preference for managing your account via accounts.firefox.com -->
@@ -613,10 +726,8 @@
<string name="preferences_sync_history">Cronologia</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Sinnalibros</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins">Credentziales</string>
<!-- Preference for syncing passwords -->
- <string name="preferences_sync_logins_2" tools:ignore="UnusedResources">Craes</string>
+ <string name="preferences_sync_logins_2">Craes</string>
<!-- Preference for syncing tabs -->
<string name="preferences_sync_tabs_2">Ischedas abertas</string>
<!-- Preference for signing out -->
@@ -641,10 +752,8 @@
The first parameter is the application name, the second is the device manufacturer name
and the third is the device model. -->
<string name="default_device_name_2">%1$s in %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards">Cartas de crèditu</string>
<!-- Preference for syncing payment methods -->
- <string name="preferences_sync_credit_cards_2" tools:ignore="UnusedResources">Mètodos de pagamentu</string>
+ <string name="preferences_sync_credit_cards_2">Mètodos de pagamentu</string>
<!-- Preference for syncing addresses -->
<string name="preferences_sync_address">Indiritzos</string>
@@ -658,11 +767,21 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Ischeda dae %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Ischedas de %1$s serradas: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Ammustra ischedas serradas de reghente</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Etzetziones</string>
<!-- Button in Exceptions Preference to turn on tracking protection for all sites (remove all exceptions) -->
<string name="preferences_tracking_protection_exceptions_turn_on_for_all">Ativa pro totu is sitos</string>
+ <!-- Text displayed when there are no exceptions -->
+ <string name="exceptions_empty_message_description">Is estensiones ti permitint de disativare s\'amparu contra a sa sighidura in tzertos sitos.</string>
<!-- Text displayed when there are no exceptions, with learn more link that brings users to a tracking protection SUMO page -->
<string name="exceptions_empty_message_learn_more_link">Àteras informatziones</string>
@@ -1444,13 +1563,9 @@
<string name="add_to_homescreen_text_placeholder">Nòmine de su curtzadòrgiu</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords">Credentziales e craes</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords_2" tools:ignore="UnusedResources">Craes</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins">Sarva credentziales e craes</string>
+ <string name="preferences_passwords_logins_and_passwords_2">Craes</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins_2" tools:ignore="UnusedResources">Sarva is craes</string>
+ <string name="preferences_passwords_save_logins_2">Sarva is craes</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Pregunta·mi·ddu</string>
<!-- Preference option for never saving passwords in Fenix -->
@@ -1463,42 +1578,24 @@
<string name="preferences_android_autofill">Cumpletamentu automàticu in àteras aplicatziones</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Cumpleta nòmines de utente e craes in àteras aplicatziones de su dispositivu tuo.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login">Agiunghe credentziale</string>
<!-- Preference option for adding a password -->
- <string name="preferences_logins_add_login_2" tools:ignore="UnusedResources">Agiunghe crae</string>
+ <string name="preferences_logins_add_login_2">Agiunghe crae</string>
- <!-- Preference for syncing saved logins in Fenix -->
- <string name="preferences_passwords_sync_logins">Sincronizatzione de credentziales</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins_2" tools:ignore="UnusedResources">Sincroniza is craes</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices">Sincronizatzione de credentziales intre dispositivos</string>
+ <string name="preferences_passwords_sync_logins_2">Sincroniza is craes</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices_2" tools:ignore="UnusedResources">Sincroniza is craes intre dispositivos</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins">Credentziales sarvadas</string>
+ <string name="preferences_passwords_sync_logins_across_devices_2">Sincroniza is craes intre dispositivos</string>
<!-- Preference to access list of saved passwords -->
- <string name="preferences_passwords_saved_logins_2" tools:ignore="UnusedResources">Craes sarvadas</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text">Is credentziales chi as a sarvare o sincronizare cun %s ant a èssere ammustradas inoghe.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link">Leghe àteru subra de Sync.</string>
+ <string name="preferences_passwords_saved_logins_2">Craes sarvadas</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2" tools:ignore="UnusedResources">Àteras informatziones in pitzus de sa sincronizatzione</string>
+ <string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Àteras informatziones in pitzus de sa sincronizatzione</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Etzetziones</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty">Is credentziales e is craes non sarvadas ant a èssere ammustradas inoghe.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description">No ant a èssere sarvadas is credentziales e is craes de custos sitos.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Cantzella totu is etzetziones</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search">Chirca credentziales</string>
<!-- Hint for search box in passwords list -->
- <string name="preferences_passwords_saved_logins_search_2" tools:ignore="UnusedResources">Chirca craes</string>
+ <string name="preferences_passwords_saved_logins_search_2">Chirca craes</string>
<!-- The header for the site that a login is for -->
<string name="preferences_passwords_saved_logins_site">Situ</string>
<!-- The header for the username for a login -->
@@ -1523,12 +1620,6 @@
<string name="saved_login_reveal_password">Ammustra sa crae</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Cua sa crae</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message">Isbloca pro bìdere is credentziales sarvadas tuas</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title">Ampara is credentziales e is craes tuas</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message">Cunfigura una secuèntzia de blocu, PIN o crae pro amparare is credentziales e is craes tuas de s’atzessu de àtera gente chi tèngiat su dispositivu tuo.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">A pustis</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
@@ -1545,44 +1636,30 @@
<string name="preferences_autofill">Cumpletamentu automàticu</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Indiritzos</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards">Cartas de crèditu</string>
<!-- Preference and title for managing the settings for payment methods -->
- <string name="preferences_credit_cards_2" tools:ignore="UnusedResources">Mètodos de pagamentu</string>
- <!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards">Sarva e cumpleta in automàticu is cartas</string>
+ <string name="preferences_credit_cards_2">Mètodos de pagamentu</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards_2" tools:ignore="UnusedResources">Sarva e cumpleta cun is mètodos de pagamentu</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary">Is datos sunt tzifrados</string>
+ <string name="preferences_credit_cards_save_and_autofill_cards_2">Sarva e cumpleta cun is mètodos de pagamentu</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary_2" tools:ignore="UnusedResources">%s tzifrat totu is mètodos de pagamentu chi sarves</string>
+ <string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s tzifrat totu is mètodos de pagamentu chi sarves</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sincronizatzione de cartas intre dispositivos</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sincronizatzione de cartas</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card">Agiunghe una carta de crèditu</string>
<!-- Preference option for adding a card -->
- <string name="preferences_credit_cards_add_credit_card_2" tools:ignore="UnusedResources">Agiunghe una carta</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards">Gesti is cartas</string>
+ <string name="preferences_credit_cards_add_credit_card_2">Agiunghe una carta</string>
<!-- Preference option for managing saved cards -->
- <string name="preferences_credit_cards_manage_saved_cards_2" tools:ignore="UnusedResources">Gesti is cartas</string>
+ <string name="preferences_credit_cards_manage_saved_cards_2">Gesti is cartas</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Agiunghe un’indiritzu</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Gesti is indiritzos</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses">Sarva e cumpleta in automàticu is indiritzos</string>
<!-- Preference for saving and filling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses_2" tools:ignore="UnusedResources">Sarva e cumpleta cun is indiritzos</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary">Include datos comente nùmeros, indiritzos eletrònicos e indiritzos de ispeditzione</string>
+ <string name="preferences_addresses_save_and_autofill_addresses_2">Sarva e cumpleta cun is indiritzos</string>
<!-- Preference summary for saving and filling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary_2" tools:ignore="UnusedResources">Includet nùmeros de telèfonu e indiritzos eletrònicos</string>
+ <string name="preferences_addresses_save_and_autofill_addresses_summary_2">Includet nùmeros de telèfonu e indiritzos eletrònicos</string>
<!-- Title of the "Add card" screen -->
<string name="credit_cards_add_card">Agiunghe una carta</string>
@@ -1603,9 +1680,7 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Cantzella sa carta</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation">Seguru chi boles cantzellare custa carta de crèditu?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation_2" tools:ignore="UnusedResources">Boles cantzellare sa carta?</string>
+ <string name="credit_cards_delete_dialog_confirmation_2">Boles cantzellare sa carta?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Cantzella</string>
<!-- The title for the "Save" menu item for saving a credit card -->
@@ -1616,46 +1691,30 @@
<string name="credit_cards_cancel_button">Annulla</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Cartas sarvadas</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message">Inserta unu nùmeru de carta vàlidu</string>
<!-- Error message for card number validation -->
- <string name="credit_cards_number_validation_error_message_2" tools:ignore="UnusedResources">Inserta unu nùmeru de carta vàlidu</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message">Cumpila custu campu</string>
+ <string name="credit_cards_number_validation_error_message_2">Inserta unu nùmeru de carta vàlidu</string>
<!-- Error message for card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message_2" tools:ignore="UnusedResources">Agiunghe unu nòmine</string>
+ <string name="credit_cards_name_on_card_validation_error_message_2">Agiunghe unu nòmine</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Isbloca pro bìdere is cartas sarvadas tuas</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title">Ampara is cartas de crèditu tuas</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title_2" tools:ignore="UnusedResources">Ampara is mètodos de pagamentu sarvados</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message">Cunfigura una secuèntzia de blocu, PIN o crae pro amparare is cartas de crèditu sarvadas tuas de s’atzessu de àtera gente chi tèngiat su dispositivu tuo.</string>
+ <string name="credit_cards_warning_dialog_title_2">Ampara is mètodos de pagamentu sarvados</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message_3" tools:ignore="UnusedResources">Cunfigura una secuèntzia de blocu, PIN o crae pro amparare is mètodos de pagamentu sarvados de s’atzessu de àtera gente chi tèngiat su dispositivu tuo.</string>
+ <string name="credit_cards_warning_dialog_message_3">Cunfigura una secuèntzia de blocu, PIN o crae pro amparare is mètodos de pagamentu sarvados de s’atzessu de àtera gente chi tèngiat su dispositivu tuo.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Cunfigura immoe</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_later">A pustis</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Isbloca su disposivitu tuo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message">Isbloca pro impreare informatzione sarvada de una carta de crèditu</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
- <string name="credit_cards_biometric_prompt_unlock_message_2" tools:ignore="UnusedResources">Isbloca pro impreare is mètodos de pagamentu sarvados</string>
+ <string name="credit_cards_biometric_prompt_unlock_message_2">Isbloca pro impreare is mètodos de pagamentu sarvados</string>
<!-- Title of the "Add address" screen -->
<string name="addresses_add_address">Agiunghe un’indiritzu</string>
<!-- Title of the "Edit address" screen -->
<string name="addresses_edit_address">Modìfica s’indiritzu</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Gesti is indiritzos</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name">Nòmine</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name">Segundu nòmine</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name">Sangunadu</string>
<!-- The header for the street address of an address -->
<string name="addresses_street_address">Indiritzu postale</string>
<!-- The header for the city of an address -->
@@ -1679,9 +1738,7 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">Cantzella s’indiritzu</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message">Seguru chi boles cantzellare custu indiritzu?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message_2" tools:ignore="UnusedResources">Boles cantzellare custu indiritzu?</string>
+ <string name="addressess_confirm_dialog_message_2">Boles cantzellare custu indiritzu?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Cantzella</string>
<!-- The text for the negative button on "Delete address" dialog -->
@@ -1776,38 +1833,24 @@
<string name="login_menu_delete_button">Cantzella</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Modìfica</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation">Seguru chi boles cantzellare custa credentziale?</string>
<!-- Message in delete confirmation dialog for password -->
- <string name="login_deletion_confirmation_2" tools:ignore="UnusedResources">Seguru chi boles cantzellare custa crae?</string>
+ <string name="login_deletion_confirmation_2">Seguru chi boles cantzellare custa crae?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Cantzella</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Annulla</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu">Optziones de credentziales</string>
<!-- The saved password options menu description. -->
- <string name="login_options_menu_2" tools:ignore="UnusedResources">Optziones de is craes</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login">Sarva is modìficas a sa credentziale.</string>
+ <string name="login_options_menu_2">Optziones de is craes</string>
<!-- The button description to save changes to an edited password. -->
- <string name="save_changes_to_login_2" tools:ignore="UnusedResources">Sarva is modìficas.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit">Modìfica</string>
+ <string name="save_changes_to_login_2">Sarva is modìficas.</string>
<!-- The page title for editing a saved password. -->
- <string name="edit_2" tools:ignore="UnusedResources">Modìfica sa crae</string>
- <!-- The page title for adding new login. -->
- <string name="add_login">Agiunghe una credentziale noa</string>
+ <string name="edit_2">Modìfica sa crae</string>
<!-- The page title for adding new password. -->
- <string name="add_login_2" tools:ignore="UnusedResources">Agiunghe una crae</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required">Crae rechesta</string>
+ <string name="add_login_2">Agiunghe una crae</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
- <string name="saved_login_password_required_2" tools:ignore="UnusedResources">Inserta una crae</string>
- <!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required">Nòmine de utente rechestu</string>
+ <string name="saved_login_password_required_2">Inserta una crae</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required_2" tools:ignore="UnusedResources">Inserta unu nòmine de utente</string>
+ <string name="saved_login_username_required_2">Inserta unu nòmine de utente</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required_2" tools:ignore="UnusedResources">Inserta un’indiritzu web</string>
<!-- Voice search button content description -->
@@ -1885,7 +1928,7 @@
<!-- Title for search suggestions when the default search suggestion engine is anything other than Google. The first parameter is default search engine name. -->
<string name="other_default_search_engine_suggestion_header">Chirca cun %s</string>
- <!-- Default browser experiment -->
+ <!-- Default browser card text -->
<string name="default_browser_experiment_card_text">Aberi in Firefox in manera automàtica is ligòngios de sitos web, de posta eletrònica e de messàgios.</string>
<!-- Content description for close button in collection placeholder. -->
@@ -1895,7 +1938,7 @@
<string name="radio_preference_info_content_description">Incarca inoghe pro àteros detàllios</string>
<!-- Content description for the action bar "up" button -->
- <string name="action_bar_up_description">Nàviga in artu</string>
+ <string name="action_bar_up_description" moz:removedIn="124" tools:ignore="UnusedResources">Nàviga in artu</string>
<!-- Content description for privacy content close button -->
<string name="privacy_content_close_button_content_description">Serra</string>
@@ -2080,12 +2123,12 @@
<!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
<string name="translation_error_language_not_supported_warning_text">Custa lìngua no est ancora atzetada: %1$s.</string>
<!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
- <string name="translation_error_language_not_supported_learn_more">Àteras informatziones</string>
+ <string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">Àteras informatziones</string>
<!-- Translations options dialog -->
<!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
- <string name="translation_option_bottom_sheet_title">Optziones de tradutzione</string>
+ <string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">Optziones de tradutzione</string>
<!-- Button text for the button that will take the user to the translation settings dialog. -->
<string name="translation_option_bottom_sheet_translation_settings">Cunfiguratzione de sa tradutzione</string>
@@ -2169,4 +2212,6 @@
<!-- Button text on the data saving mode warning dialog used by the translations feature to allow users to cancel the action and not perform a download of the language file. -->
<string name="download_language_file_dialog_negative_button_text">Annulla</string>
+ <!-- Micro survey -->
+
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-si/strings.xml b/mobile/android/fenix/app/src/main/res/values-si/strings.xml
index a90119065d..1f5dd3908d 100644
--- a/mobile/android/fenix/app/src/main/res/values-si/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-si/strings.xml
@@ -46,11 +46,19 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">මෑතදී සුරැකි</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">මෑතදී සුරැකි</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">සුරැකි සියළු පොත්යොමු පෙන්වන්න</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">සුරැකි සියළු පොත්යොමු පෙන්වන්න</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">ඉවත් කරන්න</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">ඉවත් කරන්න</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">පොත්යොමු</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">සියලුම පොත්යොමු පෙන්වන්න</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">ඉවත් කරන්න</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">මොසිල්ලා හරහා %1$s නිෂ්පාදනය කෙරේ.</string>
@@ -245,14 +253,28 @@
<!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
<string name="browser_menu_sign_in">පිවිසෙන්න</string>
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">මුරපද, පටිති සහ තවත් දෑ සමමුහූර්ත කරන්න</string>
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">සමමුහූර්තයට පිවිසෙන්න</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">සමමුහූර්ත විරාමයකි</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">නව පෞද්. පටිත්ත</string>
<!-- Browser menu label that navigates to the Password screen -->
<string name="browser_menu_passwords">මුරපද</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">වැඩතල අඩවිය</string>
<!-- Browser menu label that navigates to the page tools sub-menu -->
<string name="browser_menu_tools">මෙවලම්</string>
<!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">සුරකින්න</string>
+ <!-- Extensions management fragment -->
+ <!-- Text displayed when there are no extensions to be shown -->
+ <string name="extensions_management_no_extensions">මෙතැන දිගු නැත</string>
+
<!-- Browser Toolbar -->
<!-- Content description for the Home screen button on the browser toolbar -->
<string name="browser_toolbar_home">මුල් තිරය</string>
@@ -264,6 +286,11 @@
<!-- Content description for the translate page toolbar button that opens the translations dialog when no translation has occurred. -->
<string name="browser_toolbar_translate">පිටුව පරිවර්තනය</string>
+ <!-- Content description (not visible, for screen readers etc.) for the translate page toolbar button that opens the translations dialog when the page is translated successfully.
+ The first parameter is the name of the language that is displayed in the original page. (For example: English)
+ The second parameter is the name of the language which the page was translated to. (For example: French) -->
+ <string name="browser_toolbar_translated_successfully">%1$s වෙතින් %2$s වෙත පිටුව පරිවර්තනය වී ඇත.</string>
+
<!-- Locale Settings Fragment -->
<!-- Content description for tick mark on selected language -->
<string name="a11y_selected_locale_content_description">තෝරාගත් භාෂාව</string>
@@ -342,6 +369,8 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">ෆයර්ෆොක්ස් රහස්‍යතා දැන්වීම</string>
+ <!-- Description for learning more about our privacy notice. -->
+ <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">රහස්‍යතා දැන්වීම ගැන තව දැනගන්න</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">ඔබට ආරක්‍ෂාව සලසන්නෙමු</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
@@ -533,6 +562,8 @@
<string name="preferences_account_sync_error">සමමුහූර්තය යළි ඇරඹීමට නැවත සබඳින්න</string>
<!-- Preference for language -->
<string name="preferences_language">භාෂාව</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation">පරිවර්තනය</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">දත්ත තේරීම්</string>
<!-- Preference for data collection -->
@@ -584,8 +615,12 @@
<!-- Preference for add_ons -->
<string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">එක්කහු</string>
+ <!-- Preference for extensions -->
+ <string name="preferences_extensions">දිගු</string>
<!-- Preference for installing a local add-on -->
<string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">ගොනුවකින් එක්කහුවක් ස්ථාපනය…</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">ගොනුවකින් දිගුවක් ස්ථාපනය</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">දැනුම්දීම්</string>
@@ -594,9 +629,22 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">ඉඩ නොදේ</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">වුවමනාය</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">විකල්පයකි</string>
+ <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
+ <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">අඩවියේ දත්ත කියවා වෙනස් කිරීම</string>
+
+ <!-- The description of the icon that can delete one of the websites displayed -->
+ <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">අඩවිය මකන්න</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
<string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">අභිරුචි එක්කහු එකතුව</string>
+ <!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
+ <string name="preferences_customize_extension_collection">අභිරුචි දිගු එකතුව</string>
<!-- Button caption to confirm the add-on collection configuration -->
<string name="customize_addon_collection_ok">හරි</string>
<!-- Button caption to abort the add-on collection configuration -->
@@ -613,7 +661,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">ආපසු පනින්න</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">මෑත පොත්යොමු</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">මෑත පොත්යොමු</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">පොත්යොමු</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">මෑතදී ගොඩවැදුණු</string>
@@ -664,6 +714,8 @@
<!-- Add-ons general availability nimbus message-->
<!-- Title of the Nimbus message for add-ons general availability-->
<string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">දැන් නව එක්කහු තිබේ</string>
+ <!-- Title of the Nimbus message for extension general availability-->
+ <string name="addon_ga_message_title_2" tools:ignore="UnusedResources">දැන් නව දිගු තිබේ</string>
<!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
<string name="addon_ga_message_body" tools:ignore="UnusedResources">ෆයර්ෆොක්ස් අභිරුචිකරණයට උපකාරී වන නව දිගු 100 කට වඩා බලන්න.</string>
<!-- Button text of the Nimbus message for add-ons general availability. -->
diff --git a/mobile/android/fenix/app/src/main/res/values-sk/strings.xml b/mobile/android/fenix/app/src/main/res/values-sk/strings.xml
index b5795659e3..75648fb199 100644
--- a/mobile/android/fenix/app/src/main/res/values-sk/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-sk/strings.xml
@@ -201,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Doplnky</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Rozšírenia</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Spravovať rozšírenia</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Objavte ďalšie rozšírenia</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Informácie o účte</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -219,6 +223,8 @@
<string name="browser_menu_open_in_regular_tab">Otvoriť na bežnej karte</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Pridať na úvodnú obrazovku</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Pridať na úvodnú obrazovku…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Nainštalovať</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -230,9 +236,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Preložiť stránku</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Uložiť do kolekcie…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Uložiť do kolekcie</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Zdieľať</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Zdieľať…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Otvoriť v aplikácii %1$s</string>
@@ -289,6 +299,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Uložiť</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Pridať stránku medzi záložky</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Upraviť záložku</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Uložiť ako PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Zapnúť zobrazenie Čítačka</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Ukončiť zobrazenie Čítačka</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Preložiť stránku…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Preložená do jazyka %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Tlačiť…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Nie sú tu žiadne rozšírenia</string>
@@ -388,8 +416,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Vyhlásenie o ochrane osobných údajov Firefoxu</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Ďalšie informácie nájdete v našom Vyhlásení o ochrane osobných údajov</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Radi vás držíme v bezpečí</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -600,7 +626,9 @@
<!-- Preference for language -->
<string name="preferences_language">Jazyk</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Preklady</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Preklady</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Preklady</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Odosielanie údajov</string>
<!-- Preference for data collection -->
@@ -674,10 +702,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Vyžadované</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Voliteľné</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Čítanie a zmena údajov webových stránok</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Odstrániť webovú stránku</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Povoliť pre všetky stránky</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -804,8 +828,6 @@
<string name="preferences_sync_history">História</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Záložky</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Prihlasovacie údaje</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Heslá</string>
<!-- Preference for syncing tabs -->
@@ -832,8 +854,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s na %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Platobné karty</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Spôsoby platby</string>
<!-- Preference for syncing addresses -->
@@ -850,6 +870,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Karta z %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Zatvorené karty %1$su: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Zobraziť nedávno zatvorené karty</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Výnimky</string>
@@ -1779,12 +1807,8 @@
<string name="add_to_homescreen_description_2">Túto webovú stránku si môžete jednoducho pridať na svoju domovskú obrazovku a mať tak okamžitý prístup k prehliadaniu.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Prihlasovacie údaje</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Heslá</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Ukladanie prihlasovacích údajov</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Ukladanie hesiel</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Pred uložením sa opýtať</string>
@@ -1799,46 +1823,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Vypĺňa používateľské mená a heslá v iných aplikáciách vo vašom zariadení.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Pridať prihlasovacie údaje</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Pridať heslo</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchronizácia prihlasovacích údajov</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synchronizácia hesiel</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synchronizovať prihlasovacie údaje medzi zariadeniami</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synchronizovať heslá naprieč zariadeniami</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Uložené prihlasovacie údaje</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Uložené heslá</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Uložené alebo synchronizované údaje v aplikácii %s sa zobrazia tu.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Heslá, ktoré uložíte alebo synchronizujete do %su budú zobrazené tu. Všetky heslá sú šifrované.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Ďalšie informácie o službe Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Ďalšie informácie o synchronizácii</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Výnimky</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Tu sa zobrazia prihlasovacie údaje, ktoré sa nebudú ukladať.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s nebude ukladať heslá pre tu uvedené stránky.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Pre nasledujúce stránky sa nebudú ukladať prihlasovacie údaje.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s nebude ukladať heslá pre tieto stránky.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Odstrániť všetky výnimky</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Hľadať</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Hľadať v heslách</string>
<!-- The header for the site that a login is for -->
@@ -1867,17 +1872,11 @@
<string name="saved_login_reveal_password">Zobraziť heslo</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Skryť heslo</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Pre zobrazenie prihlasovacích údajov odomknite zariadenie</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Ak chcete zobraziť uložené heslá, odomknite zariadenie</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Zabezpečte svoje prihlasovacie údaje</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Zabezpečte svoje heslá</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastavte si vzor, kód alebo heslo, ktorým ochránite svoje uložené prihlasovacie údaje v prípade, že vaše zariadenie bude používať niekto iný.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Nastavte si vzor, kód alebo heslo, ktorým ochránite svoje uložené heslá v prípade, že vaše zariadenie bude používať niekto iný.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Neskôr</string>
@@ -1894,8 +1893,6 @@
<string name="saved_logins_sort_strategy_alphabetically">názvu (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">posledného použitia</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Zoradiť ponuku prihlasovacích údajov</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Ponuka pre zoradenie hesiel</string>
@@ -1905,41 +1902,27 @@
<string name="preferences_autofill">Automatické dopĺňanie</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresy</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Platobné karty</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Spôsoby platby</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Ukladať a automaticky dopĺňať údaje o platobných kartách</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Ukladať a dopĺňať spôsoby platby</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Údaje sú šifrované</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s zašifruje všetky spôsoby platby, ktoré uložíte</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synchronizovať platobné karty naprieč zariadeniami</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synchronizovať platobné karty</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Pridať platobnú kartu</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Pridať kartu</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Spravovať uložené karty</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Spravovať karty</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Pridať adresu</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Spravovať adresy</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Ukladať a automaticky dopĺňať adresy</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Ukladať a dopĺňať adresy</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Zahŕňa informácie ako sú čísla, e‑mailové adresy a dodacie adresy</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Zahŕňa telefónne čísla a e‑mailové adresy</string>
@@ -1963,8 +1946,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Odstrániť kartu</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Naozaj chcete odstrániť túto kreditnú kartu?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Odstrániť kartu?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Odstrániť</string>
@@ -1977,24 +1958,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Uložené karty</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Prosím, zadajte platné číslo platobnej karty</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Zadajte platné číslo karty</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Vyplňte toto pole</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Zadajte meno</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Odomknutím zobrazíte svoje uložené kreditné karty</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Zabezpečte svoje kreditné karty</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Zabezpečte svoje uložené spôsoby platby</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastavte si vzor, kód alebo heslo, ktorým ochránite svoje uložené kreditné karty v prípade, že vaše zariadenie bude používať niekto iný.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Nastavte si vzor, kód alebo heslo, ktorým ochránite svoje uložené spôsoby platby v prípade, že vaše zariadenie bude používať niekto iný.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Nastaviť teraz</string>
@@ -2002,8 +1974,6 @@
<string name="credit_cards_warning_dialog_later">Neskôr</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Odomknite svoje zariadenie</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Odomknutím použijete uložené informácie o kreditnej karte</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Ak chcete použiť uložené spôsoby platby, odomknite zariadenie</string>
@@ -2013,12 +1983,6 @@
<string name="addresses_edit_address">Úprava adresy</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Spravovať adresy</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Krstné meno</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Stredné meno</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Priezvisko</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Meno</string>
<!-- The header for the street address of an address -->
@@ -2045,8 +2009,6 @@
<string name="addressess_delete_address_button">Odstrániť adresu</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Naozaj chcete odstrániť túto adresu?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Chcete odstrániť túto adresu?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Odstrániť</string>
@@ -2144,49 +2106,29 @@
<string name="login_menu_delete_button">Odstrániť</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Upraviť</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Naozaj chcete odstrániť tieto prihlasovacie údaje?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Naozaj chcete odstrániť toto heslo?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Odstrániť</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Zrušiť</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Možnosti prihlásenia</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Možnosti hesiel</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Upraviteľné textové pole pre webovú adresu.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Upraviteľné textové pole pre webovú adresu.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Upraviteľné textové pole pre používateľské meno.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Upraviteľné textové pole pre používateľské meno.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Upraviteľné textové pole pre heslo.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Upraviteľné textové pole pre heslo.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Uložiť zmeny prihlasovacích údajov.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Uložiť zmeny</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Upraviť</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Upraviť heslo</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Pridať nové prihlasovacie údaje</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Pridať heslo</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Vyžaduje sa heslo</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Zadajte heslo</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Vyžaduje sa používateľské meno</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Zadajte používateľské meno</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Vyžaduje sa názov hostiteľa</string>
@@ -2594,6 +2536,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Zavrieť hárok Preklady</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Niektoré nastavenia sú dočasne nedostupné.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Preklady</string>
@@ -2617,6 +2562,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Vyberte jazyk, pre ktorý chcete spravovať predvoľby „Vždy prekladať“ a „Nikdy neprekladať“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Nepodarilo sa načítať jazyky. Skúste to neskôr.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Ponúkať preklad (predvolené)</string>
@@ -2640,6 +2588,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Odstrániť %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Stránky sa nepodarilo načítať. Skúste to neskôr.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Odstrániť %1$s?</string>
@@ -2717,13 +2667,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Prejsť dozadu</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Otvoriť zásuvku na ladenie</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Nástroje pre karty</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Počet kariet</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktívne</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktívne</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktívne</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Neaktívne</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2734,6 +2689,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Nástroj na vytváranie kariet</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Počet kariet, ktorý chcete vytvoriť</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Textové pole je prázdne</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Zadajte iba kladné celé čísla</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Zadajte číslo väčšie ako nula</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Prekročili ste maximálny počet kariet (%1$s), ktoré je možné vygenerovať v rámci jednej operácie</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Pridať medzi aktívne karty</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2750,11 +2715,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Vyhlásenie o ochrane osobných údajov</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Odoslať</string>
+ <string name="micro_survey_submit_button_label">Odoslať</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Zavrieť</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Zavrieť</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Ďakujeme za vašu spätnú väzbu.</string>
+ <string name="micro_survey_feedback_confirmation">Ďakujeme za vašu spätnú väzbu.</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">veľmi spokojný</string>
<!-- Option for likert scale -->
@@ -2766,6 +2731,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">veľmi nespokojný</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Otvoriť prieskum</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Zavrieť prieskum</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Zavrieť</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Prihlasovacie údaje</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-skr/strings.xml b/mobile/android/fenix/app/src/main/res/values-skr/strings.xml
index bec0a1a1c1..7461c7baa6 100644
--- a/mobile/android/fenix/app/src/main/res/values-skr/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-skr/strings.xml
@@ -55,6 +55,9 @@
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
<string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">ہٹاؤ</string>
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">نشانیاں</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
<string name="home_bookmarks_menu_item_remove">ہٹاؤ</string>
@@ -371,8 +374,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">فائرفوکس رازداری نوٹس</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">ساݙے رازداری نوٹس وچ ٻیا سکھو</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">اَساکوں تُہاکوں محفوظ رکّھݨ بھان٘دا ہِے</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -581,7 +582,7 @@
<string name="preferences_language">زبان</string>
<!-- Preference for translation -->
- <string name="preferences_translation">ترجمہ</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">ترجمہ</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">ڈیٹا چوائس</string>
<!-- Preference for data collection -->
@@ -654,10 +655,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">ضروری ہے</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">آپشنل</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">ویب سائٹ ڈیٹا پڑھو تے تبدیلی کرو</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">ویب سائٹ مٹاؤ</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">ساریاں سائٹاں کیتے اجازت ݙیوو</string>
@@ -789,8 +786,6 @@
<string name="preferences_sync_bookmarks">نشانیاں</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان آں</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">پاس ورڈز</string>
<!-- Preference for syncing tabs -->
@@ -815,8 +810,6 @@
The first parameter is the application name, the second is the device manufacturer name
and the third is the device model. -->
<string name="default_device_name_2">%3$s %2$s تے %1$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">کریڈٹ کارڈز</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">ادائیگی طریقے</string>
<!-- Preference for syncing addresses -->
@@ -1773,12 +1766,8 @@
<string name="add_to_homescreen_description_2">تساں ایں ویب سائٹ کوں آسانی نال آپݨی ڈیوائس دی ہوم سکرین وچ شامل کر سڳدے ہو تاں جو فوری رسائی حاصل تھیوے تے ایپ جیہے تجربے نال تیزی نال براؤز کرو۔</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان تے پاس ورڈ</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">پاس ورڈز</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان تے پاس ورڈ محفوظ کرو</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">پاس ورڈ محفوظ کرو</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">محفوظ کرݨ کیتے پُچھو</string>
@@ -1792,46 +1781,28 @@
<string name="preferences_android_autofill">ٻیاں ایپاں وچ آٹوفل کرو</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">آپݨی ڈیوائس تے موجود ٻیاں ایپاں وچ ورتݨ ناں تے پاس ورڈ بھرو۔</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان شامل کرو</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">پاس ورڈ شامل کرو</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ اناں کوں ہم وقت کرو</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">پاس ورڈ ہم وقت کرو</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">ڈیوائساں دے مابین لاگ ان ہم وقت کرو</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">ڈیوائساں دے وِچالے پاس ورڈز کوں ہم وقت کرو</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">محفوظ تھئے لاگ ان</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">محفوظ تھئے پاس ورڈ</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">تساں جہڑے لاگ ان محفوظ کریندے ہو یا %s نال ہم وقت کریندے ہو او اِتھاں ݙکھائے ویسن۔</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">تُساں جہڑے پاس ورڈز محفوظ کرین٘دے ہِیوے یا %s نال ہم وقت کرین٘دے ہِیوے اُوہ اِتّھاں درج ہوسِن۔ تُہاݙے محفوظ کِیتا ڳئے سبّھے پاس ورڈز کوں انکرپٹ کِیتا ڳِیا ہِے۔</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">ہم وقت کرݨ بارے ٻیا سِکھو۔</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">ہم وقت کرݨ بارے ٻیا سِکھو۔</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">استثنیات</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">جہڑے لاگ ان تے پاس ورڈ محفوظ کائنی کیتے ڳئے او اِتھ ݙکھائے ویسن۔</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s اِتّھاں درج سائٹاں دے پاس ورڈز محفوظ نہ کریسی۔</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">انہاں سائٹاں کیتے لاگ تے پاس ورڈ محفوظ کائناں تھیسن۔</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s اِنّھاں سائٹاں دے پاس ورڈز محفوظ نہ کریسی۔</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">سارے استثناء مٹاؤ</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان ڳولو</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">پاس ورڈز ڳولو</string>
<!-- The header for the site that a login is for -->
@@ -1862,17 +1833,11 @@
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">پاس ورڈ لکاؤ</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">آپݨے محفوظ کیتے لاگ اناں کوں ݙیکھݨ کیتے اݨ لاک کرو</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">آپݨے محفوظ تھئے پاس ورڈاں کوں ݙیکھݨ کیتے اݨ لاک کرو</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان تے پاس ورڈ دی محفوظ بݨاؤ</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">آپݨے محفوظ تھئے ہوئے پاس ورڈز کوں محفوظ بݨاؤ</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">جے تہاݙے کول کوئی ٻئی ڈیوائس ہے تاں آپݨے محفوظ کیتے لاگ ان تے پاس ورڈ تائیں پہنچ کنوں بچݨ سانگے ڈیوائس لاگ ان پیٹرن، پن پاس ورڈ قائم کرو۔</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">ڄیکر تُہاݙی ڈیوائس کہیں ٻئے کول ہِے تاں آپݨے محفوظ کِیتے ڳئے پاس ورڈز تئیں پہنچ کنوں بچاوݨ کِیتے ڈیوائس لاک پیٹرن، PIN، یا پاس ورڈ مُرتّب کرو۔</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">بعد وچ</string>
@@ -1889,8 +1854,6 @@
<string name="saved_logins_sort_strategy_alphabetically">ناں(A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">چھیکڑی ورتاوا</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان مینیو کوں ترتیب ݙیوو</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">پاس ورڈز مینیو کوں مُرتّب کرو</string>
@@ -1900,40 +1863,26 @@
<string name="preferences_autofill">خودبخود بھرݨ</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">پتے</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">کریڈٹ کارڈز</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">ادائیگی طریقے</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">کارڈ محفوظ کرو تے آپݨے آپ بھرو</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">ادائیگی دے طریقے محفوظ اَتے پُر کرو</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">ڈیٹا مخفی ہے۔</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%sتُہاݙے محفوظ کِیتے ڳئے ادائیگی دے سبّھے طریقیاں کوں انکرپٹ کرین٘دا ہِے</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">ڈیوائساں دے مابین کارڈ ہم وقت کرو</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">کارڈ ہم وقت کرو</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">کریڈٹ کارڈ شامل کرو</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">کارڈ شامل کرو</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">محفوظ تھئے کارڈ منیج کرو</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">کارڈز منیج کرو</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">پتہ شامل کرو</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">پتے منیج کرو</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">محفوظ کرو تے پتے خودبخود بھرو</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">محفوظ کرو تے پتے پُر کرو</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">معلومات شامل کرو، مثلاً تعداد، ای میل تے شپنگ پتے</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">فون لمبرز اَتے ای میل پتے شامل ہِن</string>
@@ -1957,8 +1906,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">کارڈ مٹاؤ</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">بھلا تہاکوں پک ہے جو تساں ایہ کریڈٹ کارڈ مٹاوݨ چاہندے ہو؟</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">کارڈ مٹاؤں؟</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">مٹاؤ</string>
@@ -1970,23 +1917,15 @@
<string name="credit_cards_cancel_button">منسوخ کرو</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">محفوظ تھئے کارڈ</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">سوہݨا، ٹھیک کریڈٹ کارڈ نمبر درج کرو</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">ہک درست کارڈ نمبر درج کرو۔</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">سوہݨا، ایہ خانہ پُر کرو</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">ناں شامل کرو</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">آپݨے محفوظ تھئے کارڈاں کوں ݙیکھݨ کیتے اݨ لاک کرو</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">آپݨے کریڈٹ کارڈاں کوں محفوظ بݨاؤ</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">آپݨے محفوظ کِیتے ڳئے ادائیگی دے طریقیاں کوں محفوظ بݨاؤ</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">جے تہاݙے کول کوئی ٻئی ڈیوائس ہے تاں آپݨے محفوظ کیتے کریڈٹ کارڈ تائیں پہنچ کنوں بچݨ سانگے ڈیوائس لاگ ان پیٹرن، پن پاس ورڈ قائم کرو۔</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">ڄیکر تُہاݙی ڈیوائس کہیں ٻئے کول ہِے تاں آپݨے محفوظ کِیتے ڳئے ادائیگی دے طریقیاں تئیں پہنچ کنوں بچاوݨ کِیتے ڈیوائس لاک پیٹرن، PIN، یا پاس ورڈ مُرتّب کرو۔</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">بݨ قائم کرو</string>
@@ -1994,8 +1933,6 @@
<string name="credit_cards_warning_dialog_later">بعد وچ</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">آپݨی ڈیوائس اݨ لاک کرو</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ذخیرہ تھئی کریڈٹ کارڈ ڄاݨکاری کوں ورتݨ کیتے اݨ لاک کرو</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">محفوظ کِیتے ڳئے ادائیگی دے طریقے استعمال کرݨ کِیتے غیر مقفّل کرو</string>
<!-- Title of the "Add address" screen -->
@@ -2004,12 +1941,6 @@
<string name="addresses_edit_address">پتے وچ تبدیلی کرو</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">پتے منیج کرو</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">پہلا ناں</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">وچلا ناں</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">چھیکڑی ناں</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">ناں</string>
<!-- The header for the street address of an address -->
@@ -2038,8 +1969,6 @@
<string name="addressess_delete_address_button">پتہ مٹاؤ</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">بھلا تہاکوں پک ہے جو تساں ایہ پتہ مٹاوݨ چاہندے ہو؟</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">ایہ پتہ مٹاؤں؟</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">مٹاؤ</string>
@@ -2141,49 +2070,29 @@
<string name="login_menu_delete_button">مٹاؤ</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">تبدیلی کرو</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">بھلا تہاکوں پک ہے جو تساں ایہ لاگ ان مٹاوݨ چاہندے ہو؟</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">بَھلا تُہاکُوں پَک ہِے جو تُساں اِیں پاس ورڈ کوں مٹاوݨ چاہن٘دے ہِیوے؟</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">مٹاؤ</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">منسوخ کرو</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان آپشناں</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">پاس ورڈ آپشناں</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان دے ویب پتے کیتے عبارت تبدیل کرݨ دے قابل خانہ۔</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">ویب سائٹ ایڈریس کِیتے قابلِ تدوین ٹیکسٹ فیلڈ۔</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان دے ورتݨ ناں کیتے عبارت تبدیل کرݨ دے قابل خانہ۔</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">صارف ناں کیتے عبارت تبدیل کرݨ دے قابل خانہ۔</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان دے پاس ورڈ کیتے عبارت تبدیل کرݨ دے قابل خانہ۔</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">پاس ورڈ کیتے عبارت تبدیل کرݨ دے قابل خانہ۔</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">لاگ ان وچ تبدیلیاں محفوظ کرو۔</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">تبدیلیاں محفوظ کرو۔</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">تبدیلی کرو</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">پاس ورڈ وچ تبدیلی کرو</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">نواں لاگ ان شامل کرو</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">پاس ورڈ شامل کرو</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">پاس ورڈ ضروری ہے</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">پاس ورڈ درج کرو</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">ورتݨ ناں ضروری ہے</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">ورتݨ ناں درج کرو</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">ہوسٹ ناں ضروری ہے</string>
@@ -2718,7 +2627,7 @@
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">ٹیب شمار</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">فعال</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">فعال</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">غیر فعال</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2745,11 +2654,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">رازداری نوٹس</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">جمع کرواؤ</string>
+ <string name="micro_survey_submit_button_label">جمع کرواؤ</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">بند کرو</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">بند کرو</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">تہاݙے فیڈبیک تے تھورائت ہیں!</string>
+ <string name="micro_survey_feedback_confirmation">تہاݙے فیڈبیک تے تھورائت ہیں!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">ݙاڈھا تسلی بخش</string>
<!-- Option for likert scale -->
diff --git a/mobile/android/fenix/app/src/main/res/values-sl/strings.xml b/mobile/android/fenix/app/src/main/res/values-sl/strings.xml
index 9207394e10..96cc2722ca 100644
--- a/mobile/android/fenix/app/src/main/res/values-sl/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-sl/strings.xml
@@ -49,12 +49,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Nedavno shranjeno</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Nedavno shranjeno</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Prikaži vse shranjene zaznamke</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Prikaži vse shranjene zaznamke</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Odstrani</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Odstrani</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Zaznamki</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Prikaži vse zaznamke</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Odstrani</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s izdeluje Mozilla.</string>
@@ -145,8 +153,10 @@
<!-- Shortcut action to open new private tab -->
<string name="home_screen_shortcut_open_new_private_tab_2">Nov zasebni zavihek</string>
- <!-- Shortcut action to open Passwords screens -->
- <string name="home_screen_shortcut_open_password_screen">Bližnjica do gesel</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_passwords">Gesla</string>
+ <!-- Shortcut action to open Passwords screen -->
+ <string name="home_screen_shortcut_open_password_screen" moz:removedIn="126" tools:ignore="UnusedResources">Bližnjica do gesel</string>
<!-- Recent Tabs -->
<!-- Header text for jumping back into the recent tab in the home screen -->
@@ -191,6 +201,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Dodatki</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Razširitve</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Upravljanje razširitev</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Odkrijte več razširitev</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Podatki o računu</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -209,18 +223,26 @@
<string name="browser_menu_open_in_regular_tab">Odpri v navadnem zavihku</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Dodaj na domač zaslon</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Dodaj na domači zaslon …</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Namesti</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Znova sinhroniziraj</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Najdi na strani</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Najdi na strani …</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Prevedi stran</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Shrani v zbirko …</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Shrani v zbirko</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Deli</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Deli …</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Odpri v %1$su</string>
@@ -248,9 +270,47 @@
<string name="browser_menu_customize_home_1">Prilagodi domačo stran</string>
<!-- Browser menu label to sign in to sync on the device using Mozilla accounts -->
- <string name="browser_menu_sign_in" tools:ignore="UnusedResources">Prijava</string>
- <!-- Browser menu caption label for the "Sign in" browser menu item described in browser_menu_sign_in -->
- <string name="browser_menu_sign_in_caption" tools:ignore="UnusedResources">Sinhronizirajte gesla, zavihke in druge podatke</string>
+ <string name="browser_menu_sign_in">Prijava</string>
+ <!-- Browser menu caption label for the "Sign in" browser menu item described in `browser_menu_sign_in` -->
+ <string name="browser_menu_sign_in_caption">Sinhronizirajte gesla, zavihke in druge podatke</string>
+
+ <!-- Browser menu label to sign back in to sync on the device when the user's account needs to be reauthenticated -->
+ <string name="browser_menu_sign_back_in_to_sync">Znova se prijavite za sinhronizacijo</string>
+ <!-- Browser menu caption label for the "Sign back in to sync" browser menu item described in `browser_menu_sign_back_in_to_sync` when there is an error in syncing -->
+ <string name="browser_menu_syncing_paused_caption">Sinhroniziranje ustavljeno</string>
+ <!-- Browser menu label that creates a private tab -->
+ <string name="browser_menu_new_private_tab">Nov zasebni zavihek</string>
+
+ <!-- Browser menu label that navigates to the Password screen -->
+ <string name="browser_menu_passwords">Gesla</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">Novo v %1$su</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Preklop na stran za računalnike</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Orodja</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Shrani</string>
+
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Dodaj stran med zaznamke</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Uredi zaznamek</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Shrani kot PDF …</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Vklopi bralni pogled</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Izklopi bralni pogled</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Prevedi stran …</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Prevedeno v jezik %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Natisni …</string>
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
@@ -348,8 +408,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Obvestilo o zasebnosti za Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Preberite več v obvestilu o zasebnosti</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Z veseljem skrbimo za vašo varnost</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -556,6 +614,10 @@
<string name="preferences_account_sync_error">Ponovno se povežite za nadaljevanje sinhronizacije</string>
<!-- Preference for language -->
<string name="preferences_language">Jezik</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Prevajanje</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Prevajanje</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Podatkovne možnosti</string>
<!-- Preference for data collection -->
@@ -624,6 +686,16 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">Ni dovoljeno</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Zahtevano</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Izbirno</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Dovoli za vsa spletna mesta</string>
+ <!-- The subtitle for the allow for all sites preference toggle -->
+ <string name="addons_permissions_allow_for_all_sites_subtitle" tools:ignore="UnusedResources">Če tej razširitvi zaupate, ji lahko dodelite dovoljenje za vsako spletno mesto.</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
<string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Zbirka dodatkov po meri</string>
@@ -648,7 +720,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Skoči nazaj</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Nedavni zaznamki</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Nedavni zaznamki</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Zaznamki</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Nedavno obiskano</string>
@@ -743,8 +817,6 @@
<string name="preferences_sync_history">Zgodovina</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Zaznamki</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Prijave</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Gesla</string>
<!-- Preference for syncing tabs -->
@@ -772,8 +844,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s na %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditne kartice</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Plačilna sredstva</string>
<!-- Preference for syncing addresses -->
@@ -790,6 +860,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Zavihek iz naprave %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Zaprtih %1$s zavihkov: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Prikaži nedavno zaprte zavihke</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Izjeme</string>
@@ -1365,6 +1443,8 @@
<!-- Text shown in the notification that pops up to remind the user that a private browsing session is active. -->
<string name="notification_pbm_delete_text_2">Zapri zasebne zavihke</string>
+ <!-- Text shown in the notification that pops up to remind the user that a private browsing session is active for Android 14+ -->
+ <string name="notification_erase_title_android_14">Zaprem zasebne zavihke?</string>
<string name="notification_erase_text_android_14">Tapnite to obvestilo ali ga povlecite vstran, da zaprete zasebne zavihke.</string>
<!-- Name of the marketing notification channel. Displayed in the "App notifications" system settings for the app -->
@@ -1725,12 +1805,8 @@
<string name="add_to_homescreen_description_2">To stran lahko preprosto dodate na svoj domači zaslon naprave za lažji dostop in hitrejše brskanje v načinu, podobnem aplikaciji.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Prijave in gesla</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Gesla</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Shranjevanje prijav in gesel</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Shranjuj gesla</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Vprašaj pred shranjevanjem</string>
@@ -1747,46 +1823,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Izpolnjuj uporabniška imena in gesla v drugih aplikacijah na napravi.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Dodaj prijavo</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Dodaj geslo</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sinhronizacija prijav</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Sinhroniziraj gesla</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Sinhroniziraj prijave med napravami</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Sinhroniziraj gesla med napravami</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Shranjene prijave</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Shranjena gesla</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Tu se prikažejo prijave, ki jih shranite ali sinhronizirate v %s.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Gesla, ki jih boste shranili ali sinhronizirali v %su, bodo našteta tukaj. Vsa gesla so shranjena v šifrirani obliki.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Več o Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Več o sinhronizaciji</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Izjeme</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Tu bodo prikazane prijave in gesla, ki niso shranjena.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">Za tukaj navedena mesta %s ne bo shranjeval gesel.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Prijave in gesla za te strani ne bodo shranjene.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">Za ta spletna mesta %s ne bo shranjeval gesel.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Izbriši vse izjeme</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Iskanje prijav</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Iskanje gesel</string>
<!-- The header for the site that a login is for -->
@@ -1815,17 +1872,11 @@
<string name="saved_login_reveal_password">Prikaži geslo</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Skrij geslo</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Odklenite za ogled shranjenih prijav</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Odklenite za ogled shranjenih gesel</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Zavarujte svoje prijave in gesla</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Zavarujte shranjena gesla</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastavite vzorec za zaklepanje naprave, PIN ali geslo za zaščito pred dostopom do shranjenih prijav in gesel, če vašo napravo uporablja še kdo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Nastavite vzorec za zaklepanje naprave, PIN ali geslo, da preprečite dostop do shranjenih gesel, če vašo napravo uporabi kdo drug.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Pozneje</string>
@@ -1845,9 +1896,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Času zadnje uporabe</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Meni razvrščanja prijav</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Meni za razvrščanje gesel</string>
@@ -1856,41 +1904,27 @@
<string name="preferences_autofill">Samodejno izpolnjevanje</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Naslovi</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditne kartice</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Plačilna sredstva</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Shrani in samodejno izpolni kartice</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Shranjuj in izpolnjuj plačilna sredstva</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Podatki so šifrirani</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s šifrira vsa plačilna sredstva, ki jih shranite</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Sinhroniziraj kartice med napravami</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Sinhroniziraj kartice</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Dodaj kreditno kartico</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Dodaj kartico</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Upravljanje shranjenih kartic</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Upravljanje kartic</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Dodaj naslov</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Upravljanje naslovov</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Shranjuj in samodejno izpolnjuj naslove</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Shranjuj in izpolnjuj naslove</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Vključi podatke, kot so številke, e-poštni naslovi in naslovi za dostavo</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Vključuje telefonske številke in e-poštne naslove</string>
@@ -1914,7 +1948,7 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Izbriši kartico</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ali ste prepričani, da želite izbrisati to kreditno kartico?</string>
+ <string name="credit_cards_delete_dialog_confirmation_2">Izbrišem kartico?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Izbriši</string>
<!-- The title for the "Save" menu item for saving a credit card -->
@@ -1927,24 +1961,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Shranjene kartice</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Vnesite veljavno številko kreditne kartice</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Vnesite veljavno številko kartice</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Izpolnite to polje</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Dodajte ime</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Odklenite za ogled shranjenih kartic</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Zavarujte svoje kreditne kartice</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Zavarujte shranjena plačilna sredstva</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Nastavite vzorec za zaklepanje naprave, PIN ali geslo za zaščito pred dostopom do kreditnih kartic, če vašo napravo uporablja še kdo.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Nastavite vzorec za zaklepanje naprave, PIN ali geslo, da preprečite dostop do plačilnih sredstev, če vašo napravo uporabi kdo drug.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Nastavi zdaj</string>
@@ -1953,9 +1978,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Odklenite svojo napravo</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Odklenite za uporabo shranjenih podatkov o kreditnih karticah</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Odklenite za ogled shranjenih plačilnih sredstev</string>
<!-- Title of the "Add address" screen -->
@@ -1964,12 +1986,6 @@
<string name="addresses_edit_address">Uredi naslov</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Upravljanje naslovov</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Ime</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Drugo ime</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Priimek</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Ime</string>
<!-- The header for the street address of an address -->
@@ -1996,7 +2012,7 @@
<string name="addressess_delete_address_button">Izbriši naslov</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Res želite izbrisati ta naslov?</string>
+ <string name="addressess_confirm_dialog_message_2">Izbrišem ta naslov?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Izbriši</string>
<!-- The text for the negative button on "Delete address" dialog -->
@@ -2095,49 +2111,29 @@
<string name="login_menu_delete_button">Izbriši</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Uredi</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ali ste prepričani, da želite izbrisati to prijavo?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Ali ste prepričani, da želite izbrisati to geslo?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Izbriši</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Prekliči</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Možnosti prijave</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Možnosti gesel</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Besedilno polje za urejanje spletnega naslova prijave.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Besedilno polje za urejanje spletnega naslova.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Besedilno polje za urejanje uporabniškega imena prijave.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Besedilno polje za urejanje uporabniškega imena.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Besedilno polje za urejanje gesla prijave.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Besedilno polje za urejanje gesla.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Shrani spremembe v prijavo.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Shrani spremembe.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Urejanje</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Uredi geslo</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Dodaj novo prijavo</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Dodaj geslo</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Zahtevano je geslo</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Vnesite geslo</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Zahtevano je uporabniško ime</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Vnesite uporabniško ime</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Zahtevano je ime domene</string>
@@ -2463,6 +2459,10 @@
<!-- Translation request dialog -->
<!-- Title for the translation dialog that allows a user to translate the webpage. -->
<string name="translations_bottom_sheet_title">Prevedem to stran?</string>
+ <!-- Title for the translation dialog after a translation was completed successfully.
+ The first parameter is the name of the language that the page was translated from, for example, "French".
+ The second parameter is the name of the language that the page was translated to, for example, "English". -->
+ <string name="translations_bottom_sheet_title_translation_completed">Stran prevedena iz jezika %1$s v jezik %2$s</string>
<!-- Title for the translation dialog that allows a user to translate the webpage when a user uses the translation feature the first time. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translations_bottom_sheet_title_first_time">Preskusite zasebno prevajanje v %1$su</string>
<!-- Additional information on the translation dialog that appears when a user uses the translation feature the first time. The first parameter is clickable text with a link, for example, "Learn more". -->
@@ -2473,10 +2473,14 @@
<string name="translations_bottom_sheet_translate_from">Izvorni jezik</string>
<!-- Label for the dropdown to select which language to translate to on the translations dialog. Usually the translate to language selected will be the user's preferred language. -->
<string name="translations_bottom_sheet_translate_to">Ciljni jezik</string>
+ <!-- Label for the dropdown to select which language to translate from on the translations dialog when the page language is not supported. This selection is to allow the user to select another language, in case we automatically detected the page language incorrectly. -->
+ <string name="translations_bottom_sheet_translate_from_unsupported_language">Poskusi z drugim izvornim jezikom</string>
<!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button">Ne zdaj</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Prikaži izvirnik</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Naložena izvirna neprevedena stran</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Končano</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2497,16 +2501,25 @@
<!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
<string name="translation_error_language_not_supported_warning_text">%1$s žal še ni podprt jezik.</string>
<!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
- <string name="translation_error_language_not_supported_learn_more">Več o tem</string>
+ <string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">Več o tem</string>
<!-- Snackbar title shown if the user closes the Translation Request dialogue and a translation is in progress. -->
<string name="translation_in_progress_snackbar">Prevajanje …</string>
+ <!-- Title for the data saving mode warning dialog used in the translation request dialog.
+ This dialog will be presented when the user attempts to perform
+ a translation without the necessary language files downloaded first when Android's data saver mode is enabled and the user is not using WiFi.
+ The first parameter is the size in kilobytes or megabytes of the language file. -->
+ <string name="translations_download_language_file_dialog_title">Prenesem jezik ob varčevanju s podatki (%1$s)?</string>
+
+
<!-- Translations options dialog -->
<!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
- <string name="translation_option_bottom_sheet_title">Možnosti prevajanja</string>
+ <string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">Možnosti prevajanja</string>
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title_heading">Možnosti prevajanja</string>
<!-- Toggle switch label that allows a user to set the setting if they would like the browser to always offer or suggest translations when available. -->
<string name="translation_option_bottom_sheet_always_translate">Vedno ponudi prevod</string>
@@ -2518,11 +2531,16 @@
<string name="translation_option_bottom_sheet_never_translate_site">Nikoli ne prevajaj tega spletnega mesta</string>
<!-- Toggle switch description that will appear under the "Never translate these sites" settings toggle switch to provide more information on how this setting interacts with other settings. -->
<string name="translation_option_bottom_sheet_switch_never_translate_site_description">Preglasi vse druge nastavitve</string>
+ <!-- Toggle switch description that will appear under the "Never translate" and "Always translate" toggle switch settings to provide more information on how these settings interacts with other settings. -->
+ <string name="translation_option_bottom_sheet_switch_description">Preglasi ponudbe za prevajanje</string>
<!-- Button text for the button that will take the user to the translation settings dialog. -->
<string name="translation_option_bottom_sheet_translation_settings">Nastavitve prevajanja</string>
<!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
<string name="translation_option_bottom_sheet_about_translations">O prevodih v %1$su</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Nekatere nastavitve začasno niso na voljo.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Prevajanje</string>
@@ -2544,6 +2562,9 @@
<!-- Title of the automatic translation preference screen that will appear on the toolbar.-->
<string name="automatic_translation_toolbar_title_preference">Samodejno prevajanje</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Jezikov ni bilo mogoče naložiti. Poskusite znova pozneje.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Ponudi prevajanje (privzeto)</string>
@@ -2562,6 +2583,14 @@
<!-- Never translate site preference screen -->
<!-- Title of the never translate site preference screen that will appear on the toolbar.-->
<string name="never_translate_site_toolbar_title_preference">Nikoli ne prevajaj teh spletnih mest</string>
+ <!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
+ The first parameter is web site url (for example:"wikipedia.com") -->
+ <string name="never_translate_site_item_list_content_description_preference">Odstrani %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Spletnih mest ni bilo mogoče naložiti. Poskusite znova pozneje.</string>
+ <!-- The Delete site dialogue title will appear when the user clicks on a list item.
+ The first parameter is web site url (for example:"wikipedia.com") -->
+ <string name="never_translate_site_dialog_title_preference">Izbrišem %1$s?</string>
<!-- The Delete site dialogue positive button will appear when the user clicks on a list item. The site will be deleted. -->
<string name="never_translate_site_dialog_confirm_delete_preference">Izbriši</string>
<!-- The Delete site dialogue negative button will appear when the user clicks on a list item. The dialog will be dismissed. -->
@@ -2591,6 +2620,14 @@
<!-- Content description (not visible, for screen readers etc.): For a language list item that is selected. -->
<string name="download_languages_item_content_description_selected_state">Izbrano</string>
+ <!-- Title for the dialog used by the translations feature to confirm deleting a language.
+ The dialog will be presented when the user requests deletion of a language.
+ The first parameter is the name of the language, for example, "Spanish" and the second parameter is the size in kilobytes or megabytes of the language file. -->
+ <string name="delete_language_file_dialog_title">Izbrišem jezik %1$s (%2$s)?</string>
+ <!-- Title for the dialog used by the translations feature to confirm deleting all languages file.
+ The dialog will be presented when the user requests deletion of all languages file.
+ The first parameter is the size in kilobytes or megabytes of the language file. -->
+ <string name="delete_language_all_languages_file_dialog_title">Izbrišem vse jezike (%1$s)?</string>
<!-- Additional information for the dialog used by the translations feature to confirm deleting all languages file. The first parameter is the name of the application, for example, "Fenix". -->
<string name="delete_language_all_languages_file_dialog_message">Če izbrišete vse jezike, bo %1$s pri prevajanju v predpomnilnik naložil delne jezike.</string>
<!-- Button text on the dialog used by the translations feature to confirm deleting a language. -->
@@ -2598,6 +2635,10 @@
<!-- Button text on the dialog used by the translations feature to cancel deleting a language. -->
<string name="delete_language_file_dialog_negative_button_text">Prekliči</string>
+ <!-- Additional information for the data saving mode warning dialog used by the translations feature. This text explains the reason a download is required for a translation. -->
+ <string name="download_language_file_dialog_message_all_languages">Dele jezikov prenesemo v vaš predpomnilnik, da prevodi ostanejo zasebni.</string>
+ <!-- Additional information for the data saving mode warning dialog used by the translations feature. This text explains the reason a download is required for a translation without mentioning the cache. -->
+ <string name="download_language_file_dialog_message_all_languages_no_cache">Dele jezikov prenesemo, da prevodi ostanejo zasebni.</string>
<!-- Checkbox label text on the data saving mode warning dialog used by the translations feature. This checkbox allows users to ignore the data usage warnings. -->
<string name="download_language_file_dialog_checkbox_text">Vedno prenesi tudi ob varčevanju s podatki</string>
<!-- Button text on the data saving mode warning dialog used by the translations feature to allow users to confirm they wish to continue and download the language file. -->
@@ -2612,12 +2653,19 @@
<string name="debug_drawer_title">Orodja za razhroščevanje</string>
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Pojdi nazaj</string>
+
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Odpri predal za razhroščevanje</string>
+
+ <!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Orodja za zavihke</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Št. zavihkov</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Dejavni</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Dejavni</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Dejaven</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Nedejavni</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2628,10 +2676,58 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Orodje za ustvarjanje zavihkov</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Količina zavihkov, ki jih želite ustvariti</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Besedilno polje je prazno</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Vnesite pozitivno celo število</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Vnesite število, večje od nič</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Dodaj med dejavne zavihke</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">Dodaj med nedejavne zavihke</string>
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Dodaj med zasebne zavihke</string>
+
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Nadaljuj</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Izpolnite anketo</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Obvestilo o zasebnosti</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label">Pošlji</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Zapri</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation">Hvala za vaše mnenje!</string>
+
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">zelo zadovoljen/-na</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">zadovoljen/-na</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">neodločen/-a</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">nezadovoljen/-na</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">zelo nezadovoljen/-na</string>
+
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Odpri anketo</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Zapri anketo</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Zapri</string>
+
+ <!-- Debug drawer logins -->
+ <!-- The title of the Logins feature in the Debug Drawer. -->
+ <string name="debug_drawer_logins_title">Prijave</string>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Trenutna domena: %s</string>
+ <!-- Content description for delete button where parameter will be the username of the login -->
+ <string name="debug_drawer_logins_delete_login_button_content_description">Izbriši prijavo z uporabniškim imenom %s</string>
</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-sq/strings.xml b/mobile/android/fenix/app/src/main/res/values-sq/strings.xml
index e7f4179835..acd961e78c 100644
--- a/mobile/android/fenix/app/src/main/res/values-sq/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-sq/strings.xml
@@ -47,12 +47,20 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Ruajtur së fundi</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Ruajtur së fundi</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Shfaqi krejt faqerojtësit e ruajtur</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Shfaqi krejt faqerojtësit e ruajtur</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Hiqe</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Hiqe</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Faqerojtës</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Shfaqni krejt faqerojtësit</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Hiqe</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s prodhohet nga Mozilla.</string>
@@ -190,6 +198,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Shtesa</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Zgjerime</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Administroni zgjerime</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Zbuloni më tepër zgjerime</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Hollësi llogarie</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -208,6 +220,8 @@
<string name="browser_menu_open_in_regular_tab">Hape në skedë të rregullt</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Shtoje te skena e Kreut</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Shtoje te skena e Kreut…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Instaloje</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -219,9 +233,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Përktheje faqen</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Ruajeni në koleksion…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Ruaje në koleksion</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Ndajeni me të tjerët</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Ndajeni me të tjerët…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Hape në %1$s</string>
@@ -272,6 +290,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Ruaje</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Faqeruajeni këtë faqe</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Përpunoni faqerojtësin</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Ruajeni si PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Aktivizo Pamjen Lexues</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Çaktivizo Pamjen Lexues</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Përktheni faqen…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Përkthyer në %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Shtypeni…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">S’ka zgjerime këtu</string>
@@ -578,7 +614,9 @@
<!-- Preference for language -->
<string name="preferences_language">Gjuhë</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Përkthim</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Përkthim</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Përkthime</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Zgjedhje për të dhënat</string>
<!-- Preference for data collection -->
@@ -685,7 +723,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Hidhu mbrapa</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Faqerojtës së fundi</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Faqerojtës së fundi</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Faqerojtës</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Vizituar së fundi</string>
@@ -825,6 +865,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Skedë nga %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Skeda %1$s të mbyllura: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Shihni skeda të mbyllura së fundi</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Përjashtime</string>
@@ -2509,6 +2557,8 @@
<string name="translations_bottom_sheet_negative_button">Jo tani</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Shfaq origjinalin</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">U ngarkua faqe origjinale e papërkthyer</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">U bë</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2689,13 +2739,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Shko mbrapsht</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Hap sirtar diagnostikimi</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Mjete Skedash</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Numër skedash</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktive</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktive</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktive</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Joaktive</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
diff --git a/mobile/android/fenix/app/src/main/res/values-su/strings.xml b/mobile/android/fenix/app/src/main/res/values-su/strings.xml
index ca7114a3cb..47f4e76ee8 100644
--- a/mobile/android/fenix/app/src/main/res/values-su/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-su/strings.xml
@@ -198,6 +198,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Émboh</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Éksténsi</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Atur émbohan</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Singraykeun émbohan leuwih loba</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Iber akun</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -216,6 +220,8 @@
<string name="browser_menu_open_in_regular_tab">Buka dina tab biasa</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Tambahkeun ka layar Tepas</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Tambahkeun ka layar Tepas…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Pasang</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -228,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Tarjamahkeun kaca</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Simpen koléksi…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Simpen kana koléksi</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Bagikeun</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Bagikeun…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Buka di %1$s</string>
@@ -281,6 +291,25 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Teundeun</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Markahkeun ieu kaca</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Édit markah</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Simpen minangka PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Hurungkeun Pamintonan Pamaca</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Pareuman Pamintonan Pamaca</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Tarjamahkeun kaca…</string>
+
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Ditarjamahkeun kana %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Citak…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Euweuh éksténsi di dieu</string>
@@ -379,8 +408,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Iber pripasi Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Ilikan deui iber privasi urang</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Urang resep ngajaga anjeun sangkan aman</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -396,6 +423,8 @@
<string name="juno_onboarding_default_browser_description_nimbus_4" tools:ignore="UnusedResources">Leuwih ti 100 juta jalma ngajaga privasina ku milih browser anu dirojong ku nirlaba.</string>
<!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_description_nimbus_5" tools:ignore="UnusedResources">Trackers dipikawanoh? Diblokir otomatis. Ekstensi? Coba sakabéhna 700. PDFs? Pamaca anu diwangun ku urang ngajadikeun éta gampang diurus.</string>
+ <!-- Description for set firefox as default browser screen used by Nimbus experiments. -->
+ <string name="juno_onboarding_default_browser_description_nimbus_2" moz:RemovedIn="124" tools:ignore="UnusedResources">Browser anu dirojong kalawan nirlaba urang nulungan pikeun mahing pausahaan ngukuntit anjeun dina wéb. \n \n Diajar leuwih lengkep dina iber privasi urang.</string>
<!-- Text for the link to the privacy notice webpage for set as firefox default browser screen.
This is part of the string with the key "juno_onboarding_default_browser_description". -->
<string name="juno_onboarding_default_browser_description_link_text" moz:RemovedIn="124" tools:ignore="UnusedResources">wawar pripasi</string>
@@ -405,10 +434,19 @@
<string name="juno_onboarding_default_browser_negative_button" tools:ignore="UnusedResources">Moal waka</string>
<!-- Title for sign in to sync screen. -->
<string name="juno_onboarding_sign_in_title_2">Tetep énkripsi nalika anjeun luncat antara alat</string>
+ <!-- Description for sign in to sync screen. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_sign_in_description_2">Sabot anjeun asup jeung nyingkronkeun, anjeun téh leuwih aman. Firefox ngaénkripsi sandi anjeun, tetengger, jeung réa-réa deui.</string>
<!-- Text for the button to sign in to sync on the device -->
<string name="juno_onboarding_sign_in_positive_button" tools:ignore="UnusedResources">Asup</string>
<!-- Text for the button dismiss the screen and move on with the flow -->
<string name="juno_onboarding_sign_in_negative_button" tools:ignore="UnusedResources">Moal waka</string>
+ <!-- Title for enable notification permission screen used by Nimbus experiments. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_enable_notifications_title_nimbus_2">Iber mantuan anjeun tetep aman jeung Firefox</string>
+ <!-- Description for enable notification permission screen used by Nimbus experiments. Nimbus experiments do not support string placeholders.
+ Note: The word "Firefox" should NOT be translated -->
+ <string name="juno_onboarding_enable_notifications_description_nimbus_2">Kirim tab kalawan aman antara parabot anjeun jeung téangan fitur privasi séjénna dina Firefox.</string>
<!-- Text for the button to request notification permission on the device -->
<string name="juno_onboarding_enable_notifications_positive_button" tools:ignore="UnusedResources">Hurungkeun iber</string>
<!-- Text for the button dismiss the screen and move on with the flow -->
@@ -495,6 +533,8 @@
<!-- Label for cookie banner section in quick settings panel. -->
<string name="cookie_banner_blocker">Pameungpeuk Spanduk Réréméh</string>
+ <!-- Preference for removing cookie/consent banners from sites automatically in private mode. See reduce_cookie_banner_summary for additional context. -->
+ <string name="preferences_cookie_banner_reduction_private_mode">Cookie Banner Blocker dina panyungsian pribadi</string>
<!-- Text for indicating cookie banner handling is off this site, this is shown as part of the protections panel with the tracking protection toggle -->
<string name="reduce_cookie_banner_off_for_site">Pareum jang ieu loka</string>
<!-- Text for cancel button indicating that cookie banner reduction is not supported for the current site, this is shown as part of the cookie banner details view. -->
@@ -512,9 +552,23 @@
<string name="reduce_cookie_banner_unsupported_site_request_submitted_2">Rekés dukungan dikirim</string>
<!-- Text for indicating cookie banner handling is currently not supported for this site, this is shown as part of the protections panel with the tracking protection toggle -->
<string name="reduce_cookie_banner_unsupported_site">Kiwari loka teu didukung </string>
+ <!-- Title text for a detail explanation indicating cookie banner handling is on this site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is a shortened URL of the current site-->
+ <string name="reduce_cookie_banner_details_panel_title_on_for_site_1">Hurungkeun Pameungpeuk Spanduk Réréméh pikeun %1$s?</string>
+ <!-- Title text for a detail explanation indicating cookie banner handling is off this site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is a shortened URL of the current site-->
+ <string name="reduce_cookie_banner_details_panel_title_off_for_site_1">Pareuman Pameungpeuk Spanduk Réréméh pikeun %1$s?</string>
<!-- Title text for a detail explanation indicating cookie banner reducer didn't work for the current site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is the application name-->
<string name="reduce_cookie_banner_details_panel_title_unsupported_site_request_2">%1$s teu bisa otomatis nolak rekés réréméh dina ieu loka. Anjeun bisa ngirim rekés pikeun ngadukung ieu loka jaga.</string>
+ <!-- Long text for a detail explanation indicating what will happen if cookie banner handling is off for a site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is the application name -->
+ <string name="reduce_cookie_banner_details_panel_description_off_for_site_1">Pareuman jeung %1$s bakal mupus cookies sarta ngamuat deui situs ieu. Ieu bisa ngaluarkeun anjeun atawa ngosongkeun carangka balanja.</string>
+ <!-- Long text for a detail explanation indicating what will happen if cookie banner handling is on for a site, this is shown as part of the cookie banner panel in the toolbar. The first parameter is the application name -->
+ <string name="reduce_cookie_banner_details_panel_description_on_for_site_3">Hurungkeun jeung %1$s bakal nyobaan nampik sakabéh spanduk cookie dina situs ieu kalawan otomatis.</string>
+ <!--Title for the cookie banner re-engagement CFR, the placeholder is replaced with app name -->
+ <string name="cookie_banner_cfr_title">%1$s cikénéh nampik réréméh pikeun anjeun</string>
+
+ <!--Message for the cookie banner re-engagement CFR -->
+ <string name="cookie_banner_cfr_message">Saeutik gangguan, saeutik cookies ngukuntit anjeun dina situs ieu.</string>
+
<!-- Description of the preference to enable "HTTPS-Only" mode. -->
<string name="preferences_https_only_summary">Otomatis nyoba nyambung ka loka maké protokol énkripsi HTTPS pikeun ngaronjatkeun kaamanan.</string>
<!-- Summary of https only preference if https only is set to off -->
@@ -532,13 +586,17 @@
<!-- Title shown in the error page for when trying to access a http website while https only mode is enabled. -->
<string name="errorpage_httpsonly_title">Situs aman teu sayaga</string>
<!-- Message shown in the error page for when trying to access a http website while https only mode is enabled. The message has two paragraphs. This is the first. -->
- <string name="errorpage_httpsonly_message_title">Sigana, raramatlokana teu ngarojong HTTPs.</string>
+ <string name="errorpage_httpsonly_message_title">Sigana, raramatlokana teu ngarojong HTTPS.</string>
<!-- Message shown in the error page for when trying to access a http website while https only mode is enabled. The message has two paragraphs. This is the second. -->
<string name="errorpage_httpsonly_message_summary">Nanging, bisa waé aya panyerang kalibet. Upama diteruskeun asup kana raramatlokana, anjeun ulah ngasupkeun émbaran sénsitip. Upama diteruskeun, mode Ngan-HTTPS bakal dipareuman samentawis pikeun éta loka.</string>
<!-- Preference for accessibility -->
<string name="preferences_accessibility">Aksésibilitas</string>
+ <!-- Preference to override the Mozilla account server -->
+ <string name="preferences_override_account_server">Serper akun Mozilal kustom</string>
<!-- Preference to override the Sync token server -->
<string name="preferences_override_sync_tokenserver">Serper Sync kustom</string>
+ <!-- Toast shown after updating the Mozilla account/Sync server override preferences -->
+ <string name="toast_override_account_sync_server_done">Akun Mozilla/Server Sync dirobah. Ngaluarkeun aplikasi pikeun nerapkeun parobahan…</string>
<!-- Preference category for account information -->
<string name="preferences_category_account">Akun</string>
<!-- Preference for changing where the toolbar is positioned -->
@@ -559,6 +617,10 @@
<string name="preferences_account_sync_error">Sambungkeun deui pikeun neruskeun nyingkronkeun</string>
<!-- Preference for language -->
<string name="preferences_language">Basa</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Tarjamah</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Tarjamah</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Pilihan data</string>
<!-- Preference for data collection -->
@@ -586,9 +648,16 @@
<!-- Preference for enabling url autocomplete-->
<string name="preferences_enable_autocomplete_urls">Otokumplit URLs</string>
+ <!-- Preference title for switch preference to show sponsored Firefox Suggest search suggestions -->
+ <string name="preferences_show_sponsored_suggestions">Saran ti sponsor</string>
+ <!-- Summary for preference to show sponsored Firefox Suggest search suggestions.
+ The first parameter is the name of the application. -->
+ <string name="preferences_show_sponsored_suggestions_summary">Pangrojong %1$s kalawan saran anu disponsoran</string>
<!-- Preference title for switch preference to show Firefox Suggest search suggestions for web content.
The first parameter is the name of the application. -->
<string name="preferences_show_nonsponsored_suggestions">Saran ti %1$s</string>
+ <!-- Summary for preference to show Firefox Suggest search suggestions for web content -->
+ <string name="preferences_show_nonsponsored_suggestions_summary">Pundut saran tina wéb patali jeung panyungsian anjeun</string>
<!-- Preference for open links in third party apps -->
<string name="preferences_open_links_in_apps">Buka tutumbu dina aplikasi</string>
<!-- Preference for open links in third party apps always open in apps option -->
@@ -608,6 +677,12 @@
<!-- Preference for add_ons -->
<string name="preferences_addons" moz:removedIn="126" tools:ignore="UnusedResources">Émbohan</string>
+ <!-- Preference for extensions -->
+ <string name="preferences_extensions">Éksténsi</string>
+ <!-- Preference for installing a local add-on -->
+ <string name="preferences_install_local_addon" moz:removedIn="126" tools:ignore="UnusedResources">Pasang panambah tina berkas</string>
+ <!-- Preference for installing a local extension -->
+ <string name="preferences_install_local_extension">Pasang pangémboh tina berkas</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Iber</string>
@@ -616,9 +691,22 @@
<!-- Summary for notification preference indicating notifications are not allowed -->
<string name="notifications_not_allowed_summary">Teu diidinan</string>
+ <!-- Add-on Permissions -->
+ <!-- The title of the required permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Dibutuhkeun</string>
+ <!-- The title of the optional permissions section from addon's permissions screen -->
+ <string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Pilihan</string>
+ <!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
+ <string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Idinan pikeun sakabéh situs</string>
+
+ <!-- The subtitle for the allow for all sites preference toggle -->
+ <string name="addons_permissions_allow_for_all_sites_subtitle" tools:ignore="UnusedResources">Lamun anjeun percaya pangémboh ieu, anjeun bisa méré idin dina unggal situs.</string>
+
<!-- Add-on Preferences -->
<!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
<string name="preferences_customize_amo_collection" moz:removedIn="126" tools:ignore="UnusedResources">Koléksi Émboh sakahayang</string>
+ <!-- Preference to customize the configured AMO (addons.mozilla.org) collection -->
+ <string name="preferences_customize_extension_collection">Koléksi Émboh sakahayang</string>
<!-- Button caption to confirm the add-on collection configuration -->
<string name="customize_addon_collection_ok">Heug</string>
<!-- Button caption to abort the add-on collection configuration -->
@@ -631,11 +719,16 @@
<!-- Toast shown after confirming the custom add-on collection configuration -->
<string name="toast_customize_addon_collection_done" moz:removedIn="126" tools:ignore="UnusedResources">Koléksi Émboh geus dirobah. Kaluar ti aplikasi pikeun nerapkeun parobahan…</string>
+ <!-- Toast shown after confirming the custom extension collection configuration -->
+ <string name="toast_customize_extension_collection_done">Koléksi Émboh geus dirobah. Kaluar ti aplikasi pikeun nerapkeun parobahan…</string>
+
<!-- Customize Home -->
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Asup deui</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
<string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Markah anyar</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Markah</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Anyar dianjangan</string>
@@ -684,19 +777,41 @@
<!-- Wallpaper onboarding dialog learn more button text. The button navigates to the wallpaper settings screen. -->
<string name="wallpapers_onboarding_dialog_explore_more_button_text">Langlang latar lianna</string>
+ <!-- Add-ons general availability nimbus message-->
+ <!-- Title of the Nimbus message for add-ons general availability-->
+ <string name="addon_ga_message_title" moz:removedIn="126" tools:ignore="UnusedResources">Aya add-on anyar</string>
+
+ <!-- Title of the Nimbus message for extension general availability-->
+ <string name="addon_ga_message_title_2" tools:ignore="UnusedResources">Aya add-on anyar yeuh</string>
+ <!-- Body of the Nimbus message for add-ons general availability. 'Firefox' intentionally hardcoded here-->
+ <string name="addon_ga_message_body" tools:ignore="UnusedResources">Pariksa 100+ pangémboh anyar anu ngamungkinkeun anjeun ngajadikeun Firefox sorangan.</string>
+ <!-- Button text of the Nimbus message for add-ons general availability. -->
+ <string name="addon_ga_message_button" moz:removedIn="126" tools:ignore="UnusedResources">Paluruh add-ons</string>
+ <!-- Button text of the Nimbus message for extensions general availability. -->
+ <string name="addon_ga_message_button_2" tools:ignore="UnusedResources">Paluruh pangémboh</string>
+
<!-- Extension process crash dialog to user -->
<!-- Title of a dialog shown to the user when enough errors have occurred with addons and they need to be temporarily disabled -->
<string name="addon_process_crash_dialog_title" moz:removedIn="126" tools:ignore="UnusedResources">Add-on tumpur saheulaanan</string>
+ <!-- Title of the extension crash dialog shown to the user when enough errors have occurred with extensions and they need to be temporarily disabled -->
+ <string name="extension_process_crash_dialog_title">Éksténsi saheulanaan dipareuman</string>
<!-- The first parameter is the application name. This is a message shown to the user when too many errors have occurred with the addons process and they have been disabled. The user can decide if they would like to continue trying to start add-ons or if they'd rather continue without them. -->
<string name="addon_process_crash_dialog_message" moz:removedIn="126" tools:ignore="UnusedResources">Aya add-on anu mugen, matak teu stabil kana sistem. %1$s gagal nyobaan malikan deui add-onna.\n\nAdd-on moal dimimitian ulang dina rintakan anu ayeuna.\n\nMiceun atawa numpurkeun add-on bisa jadi menerkeun ieu masalah.</string>
<!-- This will cause the add-ons to try restarting but the dialog will reappear if it is unsuccessful again -->
<string name="addon_process_crash_dialog_retry_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Coba balikan deui add-on</string>
+ <!-- Button text on the extension crash dialog to prompt the user to try restarting the extensions but the dialog will reappear if it is unsuccessful again -->
+ <string name="extension_process_crash_dialog_retry_button_text" tools:ignore="UnusedResources">Jalankeun deui éksténsi</string>
<!-- The user will continue with all add-ons disabled -->
<string name="addon_process_crash_dialog_disable_addons_button_text" moz:removedIn="126" tools:ignore="UnusedResources">Tuluykeun bari add-on tumpur</string>
+ <!-- Button text on the extension crash dialog to prompt the user to continue with all extensions disabled. -->
+ <string name="extension_process_crash_dialog_disable_extensions_button_text">Tuluykeun bari add-on tumpur</string>
+
<!-- Account Preferences -->
<!-- Preference for managing your account via accounts.firefox.com -->
<string name="preferences_manage_account">Kokolakeun akun</string>
+ <!-- Summary of the preference for managing your account via accounts.firefox.com. -->
+ <string name="preferences_manage_account_summary">Robah kecap aksés anjeun, atur pangumpulan data, atawa pupus akun anjeun</string>
<!-- Preference for triggering sync -->
<string name="preferences_sync_now">Singkronkeun ayeuna</string>
<!-- Preference category for sync -->
@@ -706,8 +821,8 @@
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Markah</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Login</string>
+ <!-- Preference for syncing passwords -->
+ <string name="preferences_sync_logins_2">Kecap sandi</string>
<!-- Preference for syncing tabs -->
<string name="preferences_sync_tabs_2">Buka tab</string>
<!-- Preference for signing out -->
@@ -732,8 +847,8 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s dina %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kartu kiridit</string>
+ <!-- Preference for syncing payment methods -->
+ <string name="preferences_sync_credit_cards_2">Cara mayar</string>
<!-- Preference for syncing addresses -->
<string name="preferences_sync_address">Alamat</string>
@@ -747,6 +862,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tab ti %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s tab ditutup: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Témbongkeun tab nu anyar ditutup</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Iwal</string>
@@ -1319,6 +1442,11 @@
<!-- Text shown in the notification that pops up to remind the user that a private browsing session is active. -->
<string name="notification_pbm_delete_text_2">Tutup tab nyamuni</string>
+ <!-- Text shown in the notification that pops up to remind the user that a private browsing session is active for Android 14+ -->
+ <string name="notification_erase_title_android_14">Tutup tab pribadi?</string>
+
+ <string name="notification_erase_text_android_14">Toél atawa golosorkeun bewara ieu pikeun nutup tab pribadi.</string>
+
<!-- Name of the marketing notification channel. Displayed in the "App notifications" system settings for the app -->
<string name="notification_marketing_channel_name">Pamasaran</string>
@@ -1371,6 +1499,8 @@
<string name="snackbar_private_tab_closed">Tab nyamuni ditutup</string>
<!-- Text shown in snackbar when user closes all private tabs -->
<string name="snackbar_private_tabs_closed">Tab nyamuni ditutup</string>
+ <!-- Text shown in snackbar when user erases their private browsing data -->
+ <string name="snackbar_private_data_deleted">Data panyungsi dipupus</string>
<!-- Text shown in snackbar to undo deleting a tab, top site or collection -->
<string name="snackbar_deleted_undo">BEDO</string>
<!-- Text shown in snackbar when user removes a top site -->
@@ -1561,6 +1691,8 @@
<string name="preference_enhanced_tracking_protection_custom_cookies_4">Sakabéh réréméh (bakal ngabalukarkeun raramatloka jadi teu bener)</string>
<!-- Option for enhanced tracking protection for the custom protection settings for cookies-->
<string name="preference_enhanced_tracking_protection_custom_cookies_5">Kerem réréméh meuntas-loka</string>
+ <!-- Preference for Global Privacy Control for the custom privacy settings for Global Privacy Control. '&amp;' is replaced with the ampersand symbol: &-->
+ <string name="preference_enhanced_tracking_protection_custom_global_privacy_control">Béjakeun situs wéb sangkan henteu ngabagi &amp; ngajual data</string>
<!-- Preference for enhanced tracking protection for the custom protection settings for tracking content -->
<string name="preference_enhanced_tracking_protection_custom_tracking_content">Kontén palacak</string>
<!-- Option for enhanced tracking protection for the custom protection settings for tracking content-->
@@ -1590,7 +1722,7 @@
<string name="etp_cookies_description">Meungpeuk réréméh anu dipaké ku maskapé jaringan iklan jeung analitika pikeun ngumpulkeun data langlangan anjeun di loka anu kaanjangan.</string>
<!-- Description of cross-site tracking cookies that can be blocked by Enhanced Tracking Protection -->
- <string name="etp_cookies_description_2">Total Cookie Protection ngerem réréméh dina loka anu keur dibuka sangkan teu bisa dipaké ku palacak kayaning jaringan iklan pikeun nunutur anjeun meuntas-loa.</string>
+ <string name="etp_cookies_description_2">Total Cookie Protection ngerem réréméh dina loka anu keur dibuka ku anjeun sangkan teu bisa dipaké ku palacak kayaning jaringan iklan pikeun nunutur anjeun meuntas-loa.</string>
<!-- Category of trackers (cryptominers) that can be blocked by Enhanced Tracking Protection -->
<string name="etp_cryptominers_title">Gurandil kripto</string>
<!-- Description of cryptominers that can be blocked by Enhanced Tracking Protection -->
@@ -1680,9 +1812,9 @@
<string name="add_to_homescreen_description_2">Anjeun bisa kalawan gampang nambahkeun ieu raramatloka kana layar Tepas ponsél pikeun aksés instan sarta maluruh leuwih gancang kawas muka aplikasi.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Login jeung kecap sandi</string>
+ <string name="preferences_passwords_logins_and_passwords_2">Kecap sandi</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Teundeun login jeung kecap sandi</string>
+ <string name="preferences_passwords_save_logins_2">Simpen kecap sandi</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Naros keur neundeun</string>
<!-- Preference option for never saving passwords in Fenix -->
@@ -1697,30 +1829,30 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Eusian sandiasma jeung kecap sandi dina séjén aplikasi dina parabot anjeun.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Tambahkeun login</string>
+ <!-- Preference option for adding a password -->
+ <string name="preferences_logins_add_login_2">Tambahan sandi</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Singkronkeun login</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Singkronkeun login di sakabéh parabot</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Login nu disimpen</string>
+ <string name="preferences_passwords_sync_logins_2">Singkronkeun sandi</string>
+ <!-- Preference for syncing saved passwords in Fenix, when not signed in-->
+ <string name="preferences_passwords_sync_logins_across_devices_2">Singkronkeun sandi dina sakabéh parabot</string>
+ <!-- Preference to access list of saved passwords -->
+ <string name="preferences_passwords_saved_logins_2">Sandi nu disimpen</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Login anu diteundeun atawa disingkronkeun ka %s bakal némbongan di dieu.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Leuwih jéntré ngeunaan Sync.</string>
+ <string name="preferences_passwords_saved_logins_description_empty_text_2">Sandi anu anjeun simpen atawa disingkronkeun kana %s bakal didaptarkeun di dieu. Sakumna kecap sandi anu disimpen ku anjeun téh diénkripsi.</string>
+ <!-- Clickable text for opening an external link for more information about Sync. -->
+ <string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Lenyepan ngeunaan singkronisasi</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Iwal</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Login jeung kecap sandi anu teu diteundeun bakal ditémbongkeun di dieu.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Login jeung kecap sandi moal diteundeun pikeun ieu loka.</string>
+ <!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
+ <string name="preferences_passwords_exceptions_description_empty_2">%s moal nyimpen sandi pikeun situs anu didaptarkeun di dieu.</string>
+ <!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
+ <string name="preferences_passwords_exceptions_description_2">%s moal nyimpen sandi pikeun situs-situs ieu.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Hapus sadaya pengecualian</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Paluruh login</string>
+ <!-- Hint for search box in passwords list -->
+ <string name="preferences_passwords_saved_logins_search_2">Téangan kecap sandi</string>
<!-- The header for the site that a login is for -->
<string name="preferences_passwords_saved_logins_site">Loka</string>
<!-- The header for the username for a login -->
@@ -1747,12 +1879,10 @@
<string name="saved_login_reveal_password">Témbongkeun sandi</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Sumputkeun sandi</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Buka konci pikeun nempo login anu diteundeun</string>
+ <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
+ <string name="logins_biometric_prompt_message_2">Buka konci pikeun nempo sandi anu diteundeun</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Amankeun login jeung kecap sandi anjeun</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Jieun pola konci paranti, PIN, atawa kecap sandi pikeun ngajaga login jeung kecap sandi anu diteundeun bisi paranti anjeun dipaké batur.</string>
+ <string name="logins_warning_dialog_title_2">Amankeun kecap sandi anjeun nu disimpen</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Engké</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
@@ -1768,37 +1898,39 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Panungtun dipaké</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Runtuykeun menu login</string>
+
+ <!-- Content description (not visible, for screen readers etc.) -->
+ <string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Nyortir ménu kecap sandi</string>
<!-- Autofill -->
<!-- Preference and title for managing the autofill settings -->
<string name="preferences_autofill">Eusi otomatis</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Alamat</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kartu kiridit</string>
+ <!-- Preference and title for managing the settings for payment methods -->
+ <string name="preferences_credit_cards_2">Cara mayar</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Simpen jeung otongeusi kartu</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Data diénkrip</string>
+ <string name="preferences_credit_cards_save_and_autofill_cards_2">Simpen jeung eusian cara mayar</string>
+ <!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
+ <string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s énkripsi kabéh cara mayar anu disimpen ku anjeun</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Singkronkeun kartu di sakabeh parabot</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Singkronkeun kartu</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Tambah kartu kiridit</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kokolakeun kartu anu diteundeun</string>
+ <!-- Preference option for adding a card -->
+ <string name="preferences_credit_cards_add_credit_card_2">Tambahan kartu</string>
+ <!-- Preference option for managing saved cards -->
+ <string name="preferences_credit_cards_manage_saved_cards_2">Atur kartu</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Tambah alamat</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Kokolakeun alamat</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Simpen jeung otongeusi alamat</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Kaasup émbaran sarupaning nomer, surélék, jeung alamat kirim</string>
+ <!-- Preference for saving and filling addresses -->
+ <string name="preferences_addresses_save_and_autofill_addresses_2">Simpen jeung eusian alamat</string>
+
+ <!-- Preference summary for saving and filling address data -->
+ <string name="preferences_addresses_save_and_autofill_addresses_summary_2">Sartakeun nomer telepon jeung alamat surélék</string>
<!-- Title of the "Add card" screen -->
<string name="credit_cards_add_card">Tambah kartu</string>
@@ -1819,7 +1951,7 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Hapus kartu</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Yakin anjeun rék mupus ieu kartu kiridit?</string>
+ <string name="credit_cards_delete_dialog_confirmation_2">Pupus kartu?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Hapus</string>
<!-- The title for the "Save" menu item for saving a credit card -->
@@ -1831,37 +1963,31 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Kartu disimpen</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Mangga lebetkeun nomer kartu kiridit anu sah</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Mangga eusian kolom ieu</string>
+ <!-- Error message for card number validation -->
+ <string name="credit_cards_number_validation_error_message_2">Asupkeun nomer kartu anu sah</string>
+ <!-- Error message for card name on card validation -->
+ <string name="credit_cards_name_on_card_validation_error_message_2">Tambahan ngaran</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Buka konci pikeun nempo kartu anu diteundeun</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Amankeun kartu kiridit anjeun</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Jieun pola konci paranti, PIN, atawa kecap sandi pikeun ngajaga kartu kiridit anu diteundeun bisi paranti anjeun dipaké batur.</string>
+ <string name="credit_cards_warning_dialog_title_2">Amankeun metode mayar anjeun anu disimpen</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Setél ayeuna</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_later">Engké deui</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Buka konci paranti anjeun</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Buka konci pikeun nganggo inpormasi kartu kiridit anu disimpen</string>
+ <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
+ <string name="credit_cards_biometric_prompt_unlock_message_2">Buka konci pikeun maké cara mayar anu disimpen</string>
<!-- Title of the "Add address" screen -->
<string name="addresses_add_address">Tambah alamat</string>
<!-- Title of the "Edit address" screen -->
<string name="addresses_edit_address">Ropéa alamat</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Kokolakeun alamat</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Ngaran Hareup</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Ngaran Tengah</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Ngaran Tukang</string>
+ <!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
+ <string name="addresses_name">Ngaran</string>
<!-- The header for the street address of an address -->
<string name="addresses_street_address">Alamat Jalan</string>
<!-- The header for the city of an address -->
@@ -1886,7 +2012,7 @@
<string name="addressess_delete_address_button">Hapus alamat</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Yakin rék mupus ieu alamat?</string>
+ <string name="addressess_confirm_dialog_message_2">Pupus alamat ieu?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Hapus</string>
<!-- The text for the negative button on "Delete address" dialog -->
@@ -1984,32 +2110,34 @@
<string name="login_menu_delete_button">Pupus</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Édit</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Yakin rék mupus ieu login?</string>
+ <!-- Message in delete confirmation dialog for password -->
+ <string name="login_deletion_confirmation_2">Yakin anjeun rék mupus ieu sandi?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Pupus</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Bolay</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Pilihan asup log</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Widang téks éditeun pikeun alamat raramat login.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Widang téks éditeun pikeun sandiasma login.</string>
+ <!-- The saved password options menu description. -->
+ <string name="login_options_menu_2">Pilihan sandi</string>
+ <!-- The editable text field for a website address. -->
+ <string name="saved_login_hostname_description_3">Widang téks éditeun pikeun alamat raramat login.</string>
+ <!-- The editable text field for a username. -->
+ <string name="saved_login_username_description_3">Widang téks éditeun pikeun sandiasma login.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Widang téks éditeun pikeun kecap sandi login.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Teundeun parobahan login.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Édit</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Tambahkeun login anyar</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Butuh kecap sandi</string>
+ <string name="saved_login_password_description_2">Widang téks éditeun pikeun sandi kecap.</string>
+ <!-- The button description to save changes to an edited password. -->
+ <string name="save_changes_to_login_2">Simpen parobahan.</string>
+ <!-- The page title for editing a saved password. -->
+ <string name="edit_2">Ropéa sandi</string>
+ <!-- The page title for adding new password. -->
+ <string name="add_login_2">Tambahan sandi</string>
+ <!-- Error text displayed underneath the password field when it is in an error case. -->
+ <string name="saved_login_password_required_2">Asupkeun sandi</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Kudu ngeusian sandiasma</string>
+ <string name="saved_login_username_required_2">Asupkeun ngaran pamaké</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Kudu ngeusian ngaran host</string>
+ <!-- The error message in add login view when hostname field is blank. -->
+ <string name="saved_login_hostname_required_2" tools:ignore="UnusedResources">Asupkeun kaca raramat</string>
<!-- Voice search button content description -->
<string name="voice_search_content_description">Sungsi sora</string>
<!-- Voice search prompt description displayed after the user presses the voice search button -->
@@ -2104,6 +2232,9 @@
<!-- Title for search suggestions when the default search suggestion engine is anything other than Google. The first parameter is default search engine name. -->
<string name="other_default_search_engine_suggestion_header">Pamaluruhan %s</string>
+ <!-- Default browser experiment -->
+ <!-- Default browser card title -->
+ <string name="default_browser_experiment_card_title">Alihkeun panyungsi baku anjeun</string>
<!-- Default browser card text -->
<string name="default_browser_experiment_card_text">Setél tutumbu ti raramatloka, surélék, jeung surat pikeun muka otomatis dina Firefox.</string>
@@ -2141,17 +2272,90 @@
<!-- Snackbar button text to navigate to telemetry settings.-->
<string name="experiments_snackbar_button">Buka setélan</string>
+ <!-- Review quality check feature-->
+ <!-- Name for the review quality check feature used as title for the panel. -->
+ <string name="review_quality_check_feature_name_2">Pamariksa repiu</string>
+ <!-- Summary for grades A and B for review quality check adjusted grading. -->
+ <string name="review_quality_check_grade_a_b_description">Repiu andelan</string>
+ <!-- Summary for grade C for review quality check adjusted grading. -->
+ <string name="review_quality_check_grade_c_description">Campuran bahasan nu dipercaya jeung nu teu dipercaya</string>
+ <!-- Summary for grades D and F for review quality check adjusted grading. -->
+ <string name="review_quality_check_grade_d_f_description">Repiu lain andelan</string>
+ <!-- Text for title presenting the reliability of a product's reviews. -->
+ <string name="review_quality_check_grade_title">Kumaha kadar andelan ulasan ieu?</string>
+ <!-- Title for when the rating has been updated by the review checker -->
+ <string name="review_quality_check_adjusted_rating_title">Peunteun disaluyukeun</string>
+ <!-- Description for a product's adjusted star rating. The text presents that the product's reviews which were evaluated as unreliable were removed from the adjusted rating. -->
+ <string name="review_quality_check_adjusted_rating_description_2">Dumasarkana ulasan andelan</string>
+ <!-- Title for list of highlights from a product's review emphasizing a product's important traits. -->
+ <string name="review_quality_check_highlights_title">Sorot tina ulasan cikénéh</string>
+ <!-- Title for section explaining how we analyze the reliability of a product's reviews. -->
+ <string name="review_quality_check_explanation_title">Kumaha urang nangtukeun kualitas ulasan</string>
+ <!-- Text for learn more caption presenting a link with information about review quality. First parameter is for clickable text defined in review_quality_check_info_learn_more_link. -->
+ <string name="review_quality_check_info_learn_more">Leuwih jéntré ngeunaan %s.</string>
+ <!-- Clickable text that links to review quality check SuMo page. First parameter is the Fakespot product name. -->
+ <string name="review_quality_check_info_learn_more_link_2">kumaha %s nangtukeun kualitas ulasan</string>
+ <!-- Text for title of settings section. -->
+ <string name="review_quality_check_settings_title">Setélan</string>
+ <!-- Text for label for switch preference to show recommended products from review quality check settings section. -->
+ <string name="review_quality_check_settings_recommended_products">Témbongkeun iklan dina pamariksa ténjoan</string>
+ <!-- Clickable text that links to review quality check recommended products support article. -->
+ <string name="review_quality_check_settings_recommended_products_learn_more" tools:ignore="UnusedResources">Lenyepan</string>
+ <!-- Text for turning sidebar off button from review quality check settings section. -->
+ <string name="review_quality_check_settings_turn_off">Pareuman pamariksaan ténjoan</string>
+ <!-- Text for title of recommended product section. This is displayed above a product image, suggested as an alternative to the product reviewed. -->
+ <string name="review_quality_check_ad_title" tools:ignore="UnusedResources">Leuwih tinimbangan</string>
<!-- Caption for recommended product section indicating this is an ad by Fakespot. First parameter is the Fakespot product name. -->
<string name="review_quality_check_ad_caption" tools:ignore="UnusedResources">Iklan ku %s</string>
+ <!-- Caption for review quality check panel. First parameter is for clickable text defined in review_quality_check_powered_by_link. -->
+ <string name="review_quality_check_powered_by_2">Pamariksaan ulasan drojong ku %s</string>
<!-- Clickable text that links to Fakespot.com. First parameter is the Fakespot product name. In the phrase "Fakespot by Mozilla", "by" can be localized. Does not need to stay by. -->
<string name="review_quality_check_powered_by_link" tools:ignore="UnusedResources">%s ku Mozilla</string>
+ <!-- Text for title of warning card informing the user that the current analysis is outdated. -->
+ <string name="review_quality_check_outdated_analysis_warning_title" tools:ignore="UnusedResources">Katerangan anyar pikeun dipariksa</string>
+ <!-- Text for button from warning card informing the user that the current analysis is outdated. Clicking this should trigger the product's re-analysis. -->
+ <string name="review_quality_check_outdated_analysis_warning_action" tools:ignore="UnusedResources">Pariksa ayeuna</string>
+ <!-- Title for warning card informing the user that the current product does not have enough reviews for a review analysis. -->
+ <string name="review_quality_check_no_reviews_warning_title">Ulasan tacan cukup</string>
+ <!-- Text for body of warning card informing the user that the current product does not have enough reviews for a review analysis. -->
+ <string name="review_quality_check_no_reviews_warning_body">Lamun produk ieu leuwih loba ulasanana, urang bisa mariksa kualitasna.</string>
+ <!-- Title for warning card informing the user that the current product is currently not available. -->
+ <string name="review_quality_check_product_availability_warning_title">Produk teu sadia</string>
+ <!-- Clickable text for warning card informing the user that the current product is currently not available. Clicking this should inform the server that the product is available. -->
+ <string name="review_quality_check_product_availability_warning_action_2">Laporan produk aya dina stok</string>
+ <!-- Title for warning card informing the user that the current product's analysis is still processing. The parameter is the percentage progress (0-100%) of the analysis process (e.g. 56%). -->
+ <string name="review_quality_check_analysis_in_progress_warning_title_2">Mariksa kualitas ulasan (%s)</string>
+ <!-- Text for body of warning card informing the user that the current product's analysis is still processing. -->
+ <string name="review_quality_check_analysis_in_progress_warning_body">Lilana ieu kira-kira 60 detik.</string>
+ <!-- Title for info card displayed after the user reports a product is back in stock. -->
+ <string name="review_quality_check_analysis_requested_info_title">Hatur nuhun geus ngalaporkeun!</string>
+ <!-- Title for info card displayed when the user review checker while on a product that Fakespot does not analyze (e.g. gift cards, music). -->
+ <string name="review_quality_check_not_analyzable_info_title">Urang henteu bisa mariksa ulasan ieu</string>
+ <!-- Title for info card displayed when another user reported the displayed product is back in stock. -->
+ <string name="review_quality_check_analysis_requested_other_user_info_title" tools:ignore="UnusedResources">béja nu arék datang</string>
+ <!-- Title for info card displayed to the user when analysis finished updating. -->
+ <string name="review_quality_check_analysis_updated_confirmation_title" tools:ignore="UnusedResources">Analisis geus luyu nu jeung panganyarna</string>
<!-- Text for the action button from info card displayed to the user when analysis finished updating. -->
<string name="review_quality_check_analysis_updated_confirmation_action" tools:ignore="UnusedResources">Ngarti</string>
+ <!-- Title for error card displayed to the user when an error occurred. -->
+ <string name="review_quality_check_generic_error_title">Euweuh inpo nu sadia kiwari</string>
+ <!-- Text for body of error card displayed to the user when an error occurred. -->
+ <string name="review_quality_check_generic_error_body">Urang keur digawé pikeun ngabéréskeun masalah éta. Mangga pariksa engké deui.</string>
<!-- Title for error card displayed to the user when the device is disconnected from the network. -->
<string name="review_quality_check_no_connection_title">Euweuh sambungan jaringan</string>
+ <!-- Text for body of error card displayed to the user when the device is disconnected from the network. -->
+ <string name="review_quality_check_no_connection_body">Pariksa sambungan jaringan anjeun terus cobaan muatkeun deui kacana.</string>
+ <!-- Title for card displayed to the user for products whose reviews were not analyzed yet. -->
+ <string name="review_quality_check_no_analysis_title">Euweuh inpormasi ngeunaan ulasan ieu</string>
+ <!-- Text for button from body of card displayed to the user for products whose reviews were not analyzed yet. Clicking this should trigger a product analysis. -->
+ <string name="review_quality_check_no_analysis_link">Pariksa kualitas review</string>
+ <!-- Headline for review quality check contextual onboarding card. -->
+ <string name="review_quality_check_contextual_onboarding_title">Cobaan pituduh ulasan produk urang nu dipercaya </string>
<!-- Clickable text from the contextual onboarding card that links to review quality check support article. -->
<string name="review_quality_check_contextual_onboarding_learn_more_link">Leuwih teleb</string>
+ <!-- Clickable text from the review quality check contextual onboarding card that links to Fakespot privacy notice. -->
+ <string name="review_quality_check_contextual_onboarding_privacy_policy_3">wawar pripasi</string>
<!-- Clickable text from the review quality check contextual onboarding card that links to Fakespot terms of use. -->
<string name="review_quality_check_contextual_onboarding_terms_use">katangtuan maké</string>
<!-- Text for opt-in button from the review quality check contextual onboarding card. -->
@@ -2166,11 +2370,38 @@
<!-- Flag showing that the review quality check feature is work in progress. -->
<string name="review_quality_check_beta_flag">Béta</string>
+ <!-- Content description (not visible, for screen readers etc.) for opening browser menu button to open review quality check bottom sheet. -->
+ <string name="review_quality_check_open_handle_content_description">Buka pamariksa ténjoan</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing browser menu button to open review quality check bottom sheet. -->
+ <string name="review_quality_check_close_handle_content_description">Tutup pamariksa ténjoan</string>
+ <!-- Content description (not visible, for screen readers etc.) for review quality check star rating. First parameter is the number of stars (1-5) representing the rating. -->
+ <string name="review_quality_check_star_rating_content_description">%1$s tina 5 béntang</string>
+ <!-- Text for minimize button from highlights card. When clicked the highlights card should reduce its size. -->
+ <string name="review_quality_check_highlights_show_less">Témbongkeun leuwih saeutik</string>
+ <!-- Text for maximize button from highlights card. When clicked the highlights card should expand to its full size. -->
+ <string name="review_quality_check_highlights_show_more">Pidangkeu leuwih réa</string>
+ <!-- Text for highlights card quality category header. Reviews shown under this header should refer the product's quality. -->
+ <string name="review_quality_check_highlights_type_quality">Kualitas</string>
+ <!-- Text for highlights card price category header. Reviews shown under this header should refer the product's price. -->
+ <string name="review_quality_check_highlights_type_price">Harga</string>
+ <!-- Text for highlights card shipping category header. Reviews shown under this header should refer the product's shipping. -->
+ <string name="review_quality_check_highlights_type_shipping">Pangiriman</string>
+ <!-- Text for highlights card packaging and appearance category header. Reviews shown under this header should refer the product's packaging and appearance. -->
+ <string name="review_quality_check_highlights_type_packaging_appearance">Bungkusan jeung dedegan</string>
+ <!-- Text for highlights card competitiveness category header. Reviews shown under this header should refer the product's competitiveness. -->
+ <string name="review_quality_check_highlights_type_competitiveness">Daya saing</string>
+ <!-- Text that is surrounded by quotes. The parameter is the actual text that is in quotes. An example of that text could be: Excellent craftsmanship, and that is displayed as “Excellent craftsmanship”. The text comes from a buyer's review that the feature is highlighting" -->
+ <string name="surrounded_with_quotes">&quot;%s&quot;</string>
+
<!-- Accessibility services actions labels. These will be appended to accessibility actions like "Double tap to.." but not by or applications but by services like Talkback. -->
<!-- Action label for elements that can be collapsed if interacting with them. Talkback will append this to say "Double tap to collapse". -->
<string name="a11y_action_label_collapse">tilep</string>
+ <!-- Current state for elements that can be collapsed if interacting with them. Talkback will dictate this after a state change. -->
+ <string name="a11y_state_label_collapsed">tilep</string>
<!-- Action label for elements that can be expanded if interacting with them. Talkback will append this to say "Double tap to expand". -->
<string name="a11y_action_label_expand">batek</string>
+ <!-- Current state for elements that can be expanded if interacting with them. Talkback will dictate this after a state change. -->
+ <string name="a11y_state_label_expanded">batek</string>
<!-- Action label for links to a website containing documentation about a wallpaper collection. Talkback will append this to say "Double tap to open link to learn more about this collection". -->
<string name="a11y_action_label_wallpaper_collection_learn_more">buka tutumbu pikeun leuwih teleb ngeunaan ieu koléksi</string>
<!-- Action label for links that point to an article. Talkback will append this to say "Double tap to read the article". -->
@@ -2178,9 +2409,245 @@
<!-- Action label for links to the Firefox Pocket website. Talkback will append this to say "Double tap to open link to learn more". -->
<string name="a11y_action_label_pocket_learn_more">buka tutumbu pikeun ngalenyepan</string>
+ <!-- Content description for headings announced by accessibility service. The first parameter is the text of the heading. Talkback will announce the first parameter and then speak the word "Heading" indicating to the user that this text is a heading for a section. -->
+ <string name="a11y_heading">%s, Judul</string>
+ <!-- Title for dialog displayed when trying to access links present in a text. -->
+ <string name="a11y_links_title">Tumbu</string>
+ <!-- Additional content description for text bodies that contain urls. -->
+ <string name="a11y_links_available">Tumbu sadia</string>
+
<!-- Translations feature-->
+ <!-- Translation request dialog -->
+ <!-- Title for the translation dialog that allows a user to translate the webpage. -->
+ <string name="translations_bottom_sheet_title">Tarjamahkeun kaca ieu?</string>
+ <!-- Title for the translation dialog after a translation was completed successfully.
+ The first parameter is the name of the language that the page was translated from, for example, "French".
+ The second parameter is the name of the language that the page was translated to, for example, "English". -->
+ <string name="translations_bottom_sheet_title_translation_completed">Kaca ditarjamahkeun tina %1$s ka %2$s</string>
+ <!-- Title for the translation dialog that allows a user to translate the webpage when a user uses the translation feature the first time. The first parameter is the name of the application, for example, "Fenix". -->
+ <string name="translations_bottom_sheet_title_first_time">Coba tarjamahan pribadi dina %1$s</string>
+
+
+ <!-- Additional information on the translation dialog that appears when a user uses the translation feature the first time. The first parameter is clickable text with a link, for example, "Learn more". -->
+ <string name="translations_bottom_sheet_info_message">Pikeun privasi anjeun, tarjamahan moal kungsi ninggalkeun alat anjeun. Basa anyar jeung panghadéan sakeudeung deui datang! %1$s</string>
+ <!-- Text that links to additional information about the Firefox translations feature. -->
+ <string name="translations_bottom_sheet_info_message_learn_more">Lenyepan</string>
+ <!-- Label for the dropdown to select which language to translate from on the translations dialog. Usually the translate from language selected will be the same as the page language. -->
+ <string name="translations_bottom_sheet_translate_from">Tarjamahkeun tina</string>
+ <!-- Label for the dropdown to select which language to translate to on the translations dialog. Usually the translate to language selected will be the user's preferred language. -->
+ <string name="translations_bottom_sheet_translate_to">Tarjamahkeun kana</string>
+ <!-- Label for the dropdown to select which language to translate from on the translations dialog when the page language is not supported. This selection is to allow the user to select another language, in case we automatically detected the page language incorrectly. -->
+ <string name="translations_bottom_sheet_translate_from_unsupported_language">Cobaan basa sumber séjén</string>
+ <!-- Button text on the translations dialog to dismiss the dialog and return to the browser. -->
+ <string name="translations_bottom_sheet_negative_button">Moal waka</string>
+ <!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
+ <string name="translations_bottom_sheet_negative_button_restore">Témbongkeun aslina</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Kaca asli teu ditarjamahkeun dimuat</string>
+ <!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
+ <string name="translations_bottom_sheet_negative_button_error">Anggeus</string>
+ <!-- Button text on the translations dialog to begin a translation of the website. -->
+ <string name="translations_bottom_sheet_positive_button">Tarjamahkeun</string>
+ <!-- Button text on the translations dialog when a translation error appears. -->
+ <string name="translations_bottom_sheet_positive_button_error">Pecakan deui</string>
+ <!-- Inactive button text on the translations dialog that indicates a translation is currently in progress. This button will be accompanied by a loading icon. -->
+ <string name="translations_bottom_sheet_translating_in_progress">Narjamahkeun</string>
+ <!-- Button content description (not visible, for screen readers etc.) for the translations dialog translate button that indicates a translation is currently in progress. -->
+ <string name="translations_bottom_sheet_translating_in_progress_content_description">Narjamahkeun keur Dipigawé</string>
+ <!-- Default dropdown option when initially selecting a language from the translations dialog language selection dropdown. -->
+ <string name="translations_bottom_sheet_default_dropdown_selection">Pilih basa</string>
+ <!-- The title of the warning card informs the user that a translation could not be completed. -->
+ <string name="translation_error_could_not_translate_warning_text">Aya masalah narjamahkeun. Pék cobaan deui.</string>
+ <!-- The title of the warning card informs the user that the list of languages cannot be loaded. -->
+ <string name="translation_error_could_not_load_languages_warning_text">Teu bisa ngamuat basa. Pariksa sambungan internét anjeun sarta cobaan deui.</string>
+ <!-- The title of the warning card informs the user that a language is not supported. The first parameter is the name of the language that is not supported. -->
+ <string name="translation_error_language_not_supported_warning_text">Hampura, urang acan ngadukung %1$s.</string>
+ <!-- Button text on the warning card when a language is not supported. The link will take the user to a page to a support page about translations. -->
+ <string name="translation_error_language_not_supported_learn_more" moz:removedIn="126" tools:ignore="UnusedResources">Lenyepan</string>
+ <!-- Snackbar title shown if the user closes the Translation Request dialogue and a translation is in progress. -->
+ <string name="translation_in_progress_snackbar">Narjamahkeun…</string>
+ <!-- Title for the data saving mode warning dialog used in the translation request dialog.
+ This dialog will be presented when the user attempts to perform
+ a translation without the necessary language files downloaded first when Android's data saver mode is enabled and the user is not using WiFi.
+ The first parameter is the size in kilobytes or megabytes of the language file. -->
+ <string name="translations_download_language_file_dialog_title">Unduh basa dina modeu irit data (%1$s)?</string>
+
+
+ <!-- Translations options dialog -->
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title" moz:removedIn="126" tools:ignore="UnusedResources">Pilihan Tarjamahan</string>
+ <!-- Title of the translation options dialog that allows a user to set their translation options for the site the user is currently on. -->
+ <string name="translation_option_bottom_sheet_title_heading">Pilihan tarjamahan</string>
+ <!-- Toggle switch label that allows a user to set the setting if they would like the browser to always offer or suggest translations when available. -->
+ <string name="translation_option_bottom_sheet_always_translate">Salawasna tawarkeun narjamahkeun</string>
+ <!-- Toggle switch label that allows a user to set if they would like a given language to automatically translate or not. The first parameter is the language name, for example, "Spanish". -->
+ <string name="translation_option_bottom_sheet_always_translate_in_language">Salawasna tarjamahkeun %1$s</string>
+ <!-- Toggle switch label that allows a user to set if they would like to never be offered a translation of the given language. The first parameter is the language name, for example, "Spanish". -->
+ <string name="translation_option_bottom_sheet_never_translate_in_language">Ulah narjamahkeun %1$s deui</string>
+ <!-- Toggle switch label that allows a user to set the setting if they would like the browser to never translate the site the user is currently visiting. -->
+ <string name="translation_option_bottom_sheet_never_translate_site">Ulah narjamahkeun deui situs ieu</string>
+ <!-- Toggle switch description that will appear under the "Never translate these sites" settings toggle switch to provide more information on how this setting interacts with other settings. -->
+ <string name="translation_option_bottom_sheet_switch_never_translate_site_description">Timpah sakabéh setelan séjén</string>
+ <!-- Toggle switch description that will appear under the "Never translate" and "Always translate" toggle switch settings to provide more information on how these settings interacts with other settings. -->
+ <string name="translation_option_bottom_sheet_switch_description">Timpah tawaran pikeun narjamahkeun </string>
+ <!-- Button text for the button that will take the user to the translation settings dialog. -->
+ <string name="translation_option_bottom_sheet_translation_settings">Setélan tarjamahan</string>
+ <!-- Button text for the button that will take the user to a website to learn more about how translations works in the given app. The first parameter is the name of the application, for example, "Fenix". -->
+ <string name="translation_option_bottom_sheet_about_translations">Ngeunaan tarjamahan dina %1$s</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
+ <string name="translation_option_bottom_sheet_close_content_description">Tutup lambaran Tarjamahan</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Sababaraha setélan samentara teu nyampak.</string>
+
+ <!-- Translation settings dialog -->
+ <!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
+ <string name="translation_settings_toolbar_title">Tarjamah</string>
+ <!-- Toggle switch label that indicates that the browser should signal or indicate when a translation is possible for any page. -->
+ <string name="translation_settings_offer_to_translate">Tawarkeun pikeun narjamahkeun sabot mungkin</string>
+ <!-- Toggle switch label that indicates that downloading files required for translating is permitted when using data saver mode in Android. -->
+ <string name="translation_settings_always_download">Salawasna unduh basa dina modeu irit data</string>
+ <!-- Section header text that begins the section of a list of different options the user may select to adjust their translation preferences. -->
+ <string name="translation_settings_translation_preference">Préférénsi tarjamahan</string>
+ <!-- Button text for the button that will take the user to the automatic translations settings dialog. On the automatic translations settings dialog, the user can set if translations should occur automatically for a given language. -->
+ <string name="translation_settings_automatic_translation">Tarjamahan otomatis</string>
+ <!-- Button text for the button that will take the user to the never translate these sites dialog. On the never translate these sites dialog, the user can set if translations should never occur on certain websites. -->
+ <string name="translation_settings_automatic_never_translate_sites">Ulah narjamahkeun situs-situs ieu</string>
+ <!-- Button text for the button that will take the user to the download languages dialog. On the download languages dialog, the user can manage which languages they would like to download for translations. -->
+ <string name="translation_settings_download_language">Undeur basa-basa</string>
+
+ <!-- Automatic translation preference screen -->
+ <!-- Title of the automatic translation preference screen that will appear on the toolbar.-->
+ <string name="automatic_translation_toolbar_title_preference">Tarjamahan otomatis</string>
+
+ <!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
+ <string name="automatic_translation_header_preference">Pilih basa pikeun ngatur préférénsi &quot;salawasna tarjamahkeun&quot; jeung &quot;ulah pernah narjamahkeun&quot;.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Teu bisa ngamuat basa. Mangga pariksa engké deui.</string>
+
+ <!-- Preference option for always translate. Radio button title text. -->
+ <string name="automatic_translation_option_always_translate_title_preference">Salawasna tarjamahkeun</string>
+ <!-- Preference option for never translate. Radio button title text.-->
+ <string name="automatic_translation_option_never_translate_title_preference">Ulah narjamahkeun deui</string>
+
+ <!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
+ The first parameter is web site url (for example:"wikipedia.com") -->
+ <string name="never_translate_site_item_list_content_description_preference">Piceun %1$s</string>
+ <!-- The Delete site dialogue title will appear when the user clicks on a list item.
+ The first parameter is web site url (for example:"wikipedia.com") -->
+ <string name="never_translate_site_dialog_title_preference">Pupus %1$s?</string>
+ <!-- The Delete site dialogue positive button will appear when the user clicks on a list item. The site will be deleted. -->
+ <string name="never_translate_site_dialog_confirm_delete_preference">Pupus</string>
+ <!-- The Delete site dialogue negative button will appear when the user clicks on a list item. The dialog will be dismissed. -->
+ <string name="never_translate_site_dialog_cancel_preference">Bolay</string>
+
+ <!-- Download languages preference screen -->
+ <!-- Title of the download languages preference screen toolbar.-->
+ <string name="download_languages_toolbar_title_preference">Undeur Basa-basa</string>
+ <!-- Clickable text from the screen header that links to a website. -->
+ <string name="download_languages_header_learn_more_preference">Lenyepan</string>
+ <!-- The subhead of the download language preference screen will appear above the pivot language. -->
+ <string name="download_languages_available_languages_preference">Basa nu sadia</string>
+ <!-- Text that will appear beside a core or pivot language package name to show that the language is necessary for the translation feature to function. -->
+ <string name="download_languages_default_system_language_require_preference">diperlukeun</string>
+ <!-- A text for download language preference item.
+ The first parameter is the language name, for example, "Spanish".
+ The second parameter is the language file size, for example, "(3.91 KB)" or, if the language package name is a pivot language, "(required)". -->
+ <string name="download_languages_language_item_preference">%1$s (%2$s)</string>
+
+ <!-- Button text on the dialog used by the translations feature to confirm deleting a language. -->
+ <string name="delete_language_file_dialog_positive_button_text">Pupus</string>
+ <!-- Button text on the dialog used by the translations feature to cancel deleting a language. -->
+ <string name="delete_language_file_dialog_negative_button_text">Bolay</string>
+
+ <!-- Title for the data saving mode warning dialog used by the translations feature.
+ This dialog will be presented when the user attempts to download a language or perform
+ a translation without the necessary language files downloaded first when Android's data saver mode is enabled and the user is not using WiFi.
+ The first parameter is the size in kilobytes or megabytes of the language file.-->
+ <string name="download_language_file_dialog_title">Unduh sabot dina modeu irit data (%1$s)?</string>
+ <!-- Checkbox label text on the data saving mode warning dialog used by the translations feature. This checkbox allows users to ignore the data usage warnings. -->
+ <string name="download_language_file_dialog_checkbox_text">Salawasna unduh dina modeu irit data</string>
+ <!-- Button text on the data saving mode warning dialog used by the translations feature to allow users to confirm they wish to continue and download the language file. -->
+ <string name="download_language_file_dialog_positive_button_text">Undeur</string>
+ <!-- Button text on the data saving mode warning dialog used by the translations feature to allow users to confirm they wish to continue and download the language file and perform a translation. -->
+ <string name="download_language_file_dialog_positive_button_text_all_languages">Undeur jeung tarjamahkeun</string>
+ <!-- Button text on the data saving mode warning dialog used by the translations feature to allow users to cancel the action and not perform a download of the language file. -->
+ <string name="download_language_file_dialog_negative_button_text">Bolay</string>
+
+ <!-- Debug drawer -->
+ <!-- The user-facing title of the Debug Drawer feature. -->
+ <string name="debug_drawer_title">Parabot Debug</string>
+ <!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
+ <string name="debug_drawer_back_button_content_description">Mundur</string>
+
+ <!-- Debug drawer tabs tools -->
+ <!-- The title of the Tab Tools feature in the Debug Drawer. -->
+ <string name="debug_drawer_tab_tools_title">Pakakas Tab</string>
+ <!-- The title of the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_title">Jumlah tab</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktip</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktip</string>
+ <!-- The inactive tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_inactive">Teu aktif</string>
+ <!-- The private tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_private">Salindungan</string>
+ <!-- The total tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_total">Jumlah</string>
+ <!-- The title of the tab creation tool section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_creation_tool_title">Alat nyieun tab</string>
+ <!-- The label of the text field in the tab creation tool. -->
+ <string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Tab kuantitas pikeun nyieun</string>
+ <!-- The button text to add tabs to the active tab group in the tab creation tool. -->
+ <string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Tambahkeun kana tab aktip</string>
+ <!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
+ <string name="debug_drawer_tab_tools_tab_creation_tool_button_text_inactive">Tambahkeun kana tab teu aktip</string>
+ <!-- The button text to add tabs to the private tab group in the tab creation tool. -->
+ <string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Tambahkeun kana tab nyamuni</string>
+
<!-- Micro survey -->
- </resources>
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Tuluykeun</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Lengkepan survéy ieu</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Wawar Privasi</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label">Kirimkeun</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Tutup</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation">Hatur nuhun pikeun jawaban anjeun!</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Puas pisan</string>
+
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Sugema</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Nétral</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Teu sugema</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Kacida teu sugema</string>
+
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Buka survéy</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Tutup Survéy</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Tutup</string>
+
+ <!-- Debug drawer logins -->
+ <!-- The title of the Logins feature in the Debug Drawer. -->
+ <string name="debug_drawer_logins_title">Asup log</string>
+ <!-- The title of the logins section in the Logins feature, where the parameter will be the site domain -->
+ <string name="debug_drawer_logins_current_domain_label">Domain ayeuna: %s</string>
+ <!-- The label for a button to add a new fake login for the current domain in the Logins feature. -->
+ <string name="debug_drawer_logins_add_login_button">Tambahan asup log palsu pikeun domain ieu</string>
+ <!-- Content description for delete button where parameter will be the username of the login -->
+ <string name="debug_drawer_logins_delete_login_button_content_description">Pupus asup log maké ngaran pamaké %s</string>
+</resources>
diff --git a/mobile/android/fenix/app/src/main/res/values-sv-rSE/strings.xml b/mobile/android/fenix/app/src/main/res/values-sv-rSE/strings.xml
index d8659fb4d9..d8339db68e 100644
--- a/mobile/android/fenix/app/src/main/res/values-sv-rSE/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-sv-rSE/strings.xml
@@ -202,6 +202,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Tillägg</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Tillägg</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Hantera tillägg</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Upptäck fler tillägg</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Kontoinformation</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -220,6 +224,8 @@
<string name="browser_menu_open_in_regular_tab">Öppna i vanlig flik</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Lägg till på startsidan</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Lägg till på startskärmen…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Installera</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -231,9 +237,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Översätt sida</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Spara i samling…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Spara i samling</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Dela</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Dela…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Öppna i %1$s</string>
@@ -289,6 +299,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Spara</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Bokmärk denna sida</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Redigera bokmärke</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Spara som PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Aktivera Läsvyn</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Stäng av Läsvyn</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Översätt sida…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Översatt till %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Skriv ut…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Inga tillägg här</string>
@@ -386,8 +414,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox sekretessmeddelande</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Läs mer i vårt sekretessmeddelande</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Vi älskar att hålla dig säker</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -596,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">Språk</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Översättning</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Översättning</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Översättningar</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Dataalternativ</string>
<!-- Preference for data collection -->
@@ -670,10 +698,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Krävs</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Valfri</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Läsa och ändra webbplatsdata</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Ta bort webbplats</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Tillåt för alla webbplatser</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -800,8 +824,6 @@
<string name="preferences_sync_history">Historik</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Bokmärken</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Inloggningar</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Lösenord</string>
<!-- Preference for syncing tabs -->
@@ -829,8 +851,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s på %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditkort</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Betalningsmetoder</string>
<!-- Preference for syncing addresses -->
@@ -846,6 +866,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Flik från %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s stängde %2$d flikar</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Visa nyligen stängda flikar</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Undantag</string>
@@ -1781,12 +1809,8 @@
<string name="add_to_homescreen_description_2">Du kan enkelt lägga till den här webbplatsen på enhetens startskärm för att få direktåtkomst och surfa snabbare med en appliknande upplevelse.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Inloggningar och lösenord</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Lösenord</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Spara inloggningar och lösenord</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Spara lösenord</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Fråga för att spara</string>
@@ -1801,47 +1825,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Fyll i användarnamn och lösenord i andra appar på din enhet.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Lägg till inloggning</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Lägg till lösenord</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkronisera inloggningar</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Synkronisera lösenord</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Synkronisera inloggningar mellan enheter</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Synkronisera lösenord mellan enheter</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Sparade inloggningar</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Sparade lösenord</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">De inloggningar som du sparar eller synkroniserar till %s kommer att dyka upp här.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Lösenorden du sparar eller synkroniserar till %s kommer att listas här. Alla lösenord du sparar är krypterade.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Läs mer om Sync.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Läs mer om synkronisering</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Undantag</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Inloggningar och lösenord som inte sparas visas här.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s kommer inte att spara lösenord för webbplatser som listas här.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Inloggningar och lösenord sparas inte för dessa webbplatser.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s kommer inte att spara lösenord för dessa webbplatser.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Ta bort alla undantag</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Sök inloggningar</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Sök efter lösenord</string>
<!-- The header for the site that a login is for -->
@@ -1870,17 +1875,11 @@
<string name="saved_login_reveal_password">Visa lösenord</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Dölj lösenord</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lås upp för att se dina sparade inloggningar</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Lås upp för att se dina sparade lösenord</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Säkra dina inloggningar och lösenord</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Säkra dina sparade lösenord</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Konfigurera enhetens låsmönster, PIN eller lösenord för att skydda dina sparade inloggningar och lösenord från åtkomst om någon annan har din enhet.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Konfigurera ett enhetslåsmönster, PIN-kod eller lösenord för att skydda dina sparade lösenord från åtkomst om någon annan använder din enhet.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Senare</string>
@@ -1897,8 +1896,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Namn (A-Ö)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Senast använd</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Sortera inloggningsmenyn</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menyn sortera lösenord</string>
@@ -1908,41 +1905,27 @@
<string name="preferences_autofill">Autofyll</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresser</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kreditkort</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Betalningsmetoder</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Spara och fyll i kreditkort automatiskt</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Spara och fyll i betalningsmetoder</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Data är krypterad</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s krypterar alla betalningsmetoder som du sparar</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Synkronisera kort mellan enheter</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Synkronisera kort</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Lägg till kreditkort</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Lägg till kort</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Hantera sparade kreditkort</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Hantera kort</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Lägg till adress</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Hantera adresser</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Spara och fyll i adresser automatiskt</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Spara och fyll i adresser</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Inkludera information som nummer, e-post och leveransadresser</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Inkluderar telefonnummer och e-postadresser</string>
@@ -1966,8 +1949,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Ta bort kort</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Är du säker på att du vill ta bort det här kreditkortet?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Ta bort kort?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Ta bort</string>
@@ -1981,24 +1962,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Sparade kreditkort</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ange ett giltigt kreditkortsnummer</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Ange ett giltigt kortnummer</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Fyll i det här fältet</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Lägg till ett namn</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Lås upp för att se dina sparade kreditkort</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Säkra dina kreditkort</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Säkra dina sparade betalningsmetoder</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Konfigurera enhetens låsmönster, PIN eller lösenord för att skydda dina sparade kreditkort från åtkomst om någon annan har din enhet.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Konfigurera ett enhetslåsmönster, PIN-kod eller lösenord för att skydda dina sparade betalningsmetoder från att användas om någon annan har din enhet.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Konfigurera nu</string>
@@ -2007,9 +1979,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Lås upp din enhet</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lås upp för att använda lagrad kreditkortsinformation</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Lås upp för att använda sparade betalningsmetoder</string>
<!-- Title of the "Add address" screen -->
@@ -2018,12 +1987,6 @@
<string name="addresses_edit_address">Redigera adress</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Hantera adresser</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Förnamn</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Mellannamn</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Efternamn</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Namn</string>
<!-- The header for the street address of an address -->
@@ -2050,8 +2013,6 @@
<string name="addressess_delete_address_button">Ta bort adress</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Är du säker på att du vill ta bort den här adressen?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Ta bort den här adressen?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Ta bort</string>
@@ -2150,49 +2111,29 @@
<string name="login_menu_delete_button">Ta bort</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Redigera</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Är du säker på att du vill ta bort den här inloggningen?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Är du säker på att du vill ta bort det här lösenordet?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Ta bort</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Avbryt</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Inloggningsalternativ</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Lösenordsalternativ</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbara textfältet för inloggningens webbadress.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Det redigerbara textfältet för webbplatsadressen.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbara textfältet för inloggningens användarnamn.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Det redigerbara textfältet för användarnamnet.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Det redigerbara textfältet för inloggningens lösenord.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Det redigerbara textfältet för lösenordet.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Spara ändringar för inloggning.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Spara ändringar.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Redigera</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Redigera lösenord</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Lägg till ny inloggning</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Lägg till lösenord</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Lösenord krävs</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Ange ett lösenord</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Användarnamn krävs</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Ange ett användarnamn</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Värdnamn krävs</string>
@@ -2600,6 +2541,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Stäng översättningsarket</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Vissa inställningar är inte tillgängliga för tillfället.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Översättningar</string>
@@ -2622,6 +2566,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Välj ett språk för att hantera inställningarna för &quot;översätt alltid&quot; och &quot;översätt aldrig&quot;.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Det gick inte att ladda språk. Kom tillbaka senare.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Erbjuda att översätta (standard)</string>
@@ -2644,6 +2591,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Ta bort %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Det gick inte att ladda webbplatser. Kom tillbaka senare.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Tog bort %1$s?</string>
@@ -2721,13 +2670,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Navigera bakåt</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Öppna felsökningslådan</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Flikverktyg</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Antal flikar</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktiv</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktiv</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktiv</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inaktiv</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2738,6 +2692,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Verktyg för att skapa flikar</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Antal flikar att skapa</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Textfältet är tomt</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Ange endast positiva heltal</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Ange ett nummer större än noll</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Översteg det maximala antalet flikar (%1$s) som kan genereras i en operation</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Lägg till i aktiva flikar</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2754,11 +2718,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Sekretessmeddelande</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Skicka in</string>
+ <string name="micro_survey_submit_button_label">Skicka in</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Stäng</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Stäng</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Tack för din feedback!</string>
+ <string name="micro_survey_feedback_confirmation">Tack för din feedback!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Väldigt nöjd</string>
<!-- Option for likert scale -->
@@ -2770,6 +2734,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Väldigt missnöjd</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Öppna undersökning</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Stäng undersökning</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Stäng</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Inloggningar</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-tg/strings.xml b/mobile/android/fenix/app/src/main/res/values-tg/strings.xml
index 35aaf65dd9..8e3c6c45a9 100644
--- a/mobile/android/fenix/app/src/main/res/values-tg/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-tg/strings.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools" xmlns:moz="http://mozac.org/tools">
<!-- App name for private browsing mode. The first parameter is the name of the app defined in app_name (for example: Fenix)-->
- <string name="app_name_private_5">%s-и хусусӣ</string>
+ <string name="app_name_private_5">Хусусӣ %s</string>
<!-- App name for private browsing mode. The first parameter is the name of the app defined in app_name (for example: Fenix)-->
<string name="app_name_private_4">%s (Хусусӣ)</string>
@@ -202,6 +202,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Ҷузъҳои иловагӣ</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Васеъшавиҳо</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Идоракунии васеъшавиҳо</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Кашф кардани васеъшавиҳои бештар</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Маълумот дар бораи ҳисоби корбар</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -221,6 +225,8 @@
<string name="browser_menu_open_in_regular_tab">Кушодан дар варақаи одӣ</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Илова кардан ба экрани асосӣ</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Илова кардан ба экрани асосӣ…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Насб кардан</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -232,9 +238,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Тарҷума кардани саҳифа</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Нигоҳ доштан дар маҷмуа…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Нигоҳ доштан дар маҷмуа</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Мубодила кардан</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Мубодила…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Кушодан дар %1$s</string>
@@ -288,6 +298,25 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Нигоҳ доштан</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Гузоштани хатбарак барои ин саҳифа</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Таҳрир кардани хатбарак</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Нигоҳ доштан ҳамчун PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Фаъол кардани намоиши хонанда</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Хомӯш кардани намоиши хонанда</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Тарҷума кардани саҳифа…</string>
+
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Ба забони %1$s тарҷума шуд</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Чоп кардан…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Дар ин ҷой ягон васеъшавӣ нест</string>
@@ -384,8 +413,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Огоҳномаи махфияти «Firefox»</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Маълумоти бештар дар «Огоҳномаи махфияти мо»</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Мо нигоҳдории бехатарии шуморо дӯст медорем</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -594,7 +621,9 @@
<!-- Preference for language -->
<string name="preferences_language">Забон</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Тарҷума</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Тарҷума</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Тарҷумаҳо</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Интихоби маълумот</string>
<!-- Preference for data collection -->
@@ -665,10 +694,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Ҳатмӣ аст</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Интихобӣ аст</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Хониш ва тағйироти маълумоти сомона</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Нест кардани сомона</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Иҷозат барои ҳамаи сомонаҳо</string>
@@ -797,8 +822,6 @@
<string name="preferences_sync_history">Таърих</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Хатбаракҳо</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Воридшавиҳо</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Ниҳонвожаҳо</string>
<!-- Preference for syncing tabs -->
@@ -826,8 +849,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s дар %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Кортҳои кредитӣ</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Тарзҳои пардохт</string>
<!-- Preference for syncing addresses -->
@@ -843,6 +864,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Варақа аз %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%2$d варақаи пӯшидашудаи «%1$s»</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Дидани варақаҳои ба наздикӣ пӯшидашуда</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Истисноҳо</string>
@@ -1779,12 +1808,8 @@
<string name="add_to_homescreen_description_2">Шумо метавонед ин сомонаро ба экрани асосии дастгоҳи худ ба осонӣ илова кунед, то ки ба он дастрасии фаврӣ дошта бошед ва бо таҷрибаи ба барнома монанд зудтар паймоиш кунед.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Воридшавиҳо ва ниҳонвожаҳо</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Ниҳонвожаҳо</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Нигоҳ доштани воридшавиҳо ва ниҳонвожаҳо</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Нигоҳ доштани ниҳонвожаҳо</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Бо пешниҳоди нигоҳдорӣ</string>
@@ -1799,46 +1824,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Номи корбарон ва ниҳонвожаҳоро дар барномаҳои дигари дастгоҳи худ пур кунед.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Илова кардани воридшавӣ</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Илова кардани ниҳонвожа</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Воридшавиҳои ҳамоҳангшуда</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Ҳамоҳанг кардани ниҳонвожаҳо</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Ҳамоҳанг кардани воридшавиҳо байни дастгоҳҳо</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Ҳамоҳанг кардани ниҳонвожаҳо байни дастгоҳҳо</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Воридшавиҳои нигоҳдошташуда</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Ниҳонвожаҳои нигоҳдошташуда</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Воридшавиҳое, ки шумо дар %s нигоҳ медоред ё ҳамоҳанг мекунед, дар ин ҷо нишон дода мешаванд.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Ниҳонвожаҳоеро, ки шумо нигоҳ медоред ё бо «%s» ҳамоҳанг месозед, дар ин рӯйхат нишон дода мешаванд. Ҳамаи ниҳонвожаҳое, ки шумо нигоҳ медоред, рамзгузорӣ карда мешаванд.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Маълумоти бештар дар бораи ҳамоҳангсозӣ</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Маълумоти бештар дар бораи ҳамоҳангсозӣ</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Истисноҳо</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Воридшавиҳо ва ниҳонвожаҳое, ки нигоҳ дошта нашудаанд, дар ин ҷо нишон дошта мешаванд.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">«%s» барои сомонаҳое, ки дар ин рӯйхат нишон дода шудаанд, ниҳонвожаҳоро нигоҳ намедорад.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Воридшавиҳо ва ниҳонвожаҳо барои сомонаҳои зерин нигоҳ дошта намешаванд.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">«%s» барои сомонаҳои зерин ниҳонвожаҳоро нигоҳ намедорад.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Нест кардани ҳамаи истисноҳо</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Ҷустуҷӯи воридшавиҳо</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Ҷустуҷӯи ниҳонвожаҳо</string>
<!-- The header for the site that a login is for -->
@@ -1867,17 +1873,11 @@
<string name="saved_login_reveal_password">Нишон додани ниҳонвожа</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Пинҳон кардани ниҳонвожа</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Барои дидани воридшавиҳои нигоҳдошташуда, қулфро кушоед</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Барои дидани ниҳонвожаҳои нигоҳдошташуда, қулфро кушоед</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Воридшавиҳо ва ниҳонвожаҳои худро муҳофизат намоед</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Ниҳонвожаҳои нигоҳдоштаро муҳофизат намоед</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Барои муҳофизат кардани воридшавиҳо ва ниҳонвожаҳои худ аз дастрасии озод, агар касе дигар аз дастгоҳи шумо истифода барад, шаклвораи қулфи экран, рамзи PIN ё ниҳонвожаеро барои дастгоҳи худ танзим намоед.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Барои муҳофизат кардани ниҳонвожаҳои нигоҳдошташудаи худ аз дастрасии озод, агар касе дигар аз дастгоҳи шумо истифода барад, шаклвораи қулфи экран, рамзи PIN ё ниҳонвожаеро барои дастгоҳи худ танзим намоед.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Дертар</string>
@@ -1895,9 +1895,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Истифодашудаи охирин</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Мураттаб кардани менюи воридшавиҳо</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Менюи мураттабсозии ниҳонвожаҳо</string>
@@ -1906,41 +1903,27 @@
<string name="preferences_autofill">Пуркунии худкор</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Нишониҳо</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Кортҳои кредитӣ</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Тарзҳои пардохт</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Нигоҳ доштан ва ба таври худкор пур кардани кортҳо</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Нигоҳ доштан ва пур кардани тарзҳои пардохт</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Маълумот рамзгузорӣ карда шуд</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">«%s» ҳамаи тарзҳои пардохтеро, ки шумо нигоҳ медоред, рамзгузорӣ мекунад</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Ҳамоҳанг кардани кортҳо байни дастгоҳҳо</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Ҳамоҳанг кардани кортҳо</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Илова кардани корти кредитӣ</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Илова кардани корт</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Идора кардани кортҳои нигоҳдошташуда</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Идоракунии кортҳо</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Илова кардани нишонӣ</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Идоракунии нишониҳо</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Нигоҳ доштан ва ба таври худкор пур кардани нишониҳо</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Нигоҳ доштан ва пур кардани нишониҳо</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Илова кардани маълумот монанди рақамҳо, нишониҳои почтаи электронӣ ва бурдарасонӣ</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Рақамҳои телефон ва нишониҳои почтаи электрониро дар бар мегирад</string>
@@ -1965,8 +1948,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Нест кардани корт</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Шумо мутмаин ҳастед, ки мехоҳед ин корти кредитиро нест намоед?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Кортро нест мекунед?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Нест кардан</string>
@@ -1980,24 +1961,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Кортҳои нигоҳдошташуда</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Лутфан, рақами корти кредитии дурустро ворид намоед</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Рақами корти дурустро ворид намоед</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Лутфан, ин майдонро пур кунед</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Номеро ворид намоед</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Барои дидани кортҳои нигоҳдошташуда, қулфро кушоед</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Кортҳои кредитии худро муҳофизат кунед</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Тарзҳои пардохти нигоҳдоштаи худро муҳофизат намоед</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Барои муҳофизат кардани кортҳои кредитии нигоҳдошташудаи худ аз дастрасии озод, агар касе дигар аз дастгоҳи шумо истифода барад, шаклвораи қулфи экран, рамзи PIN ё ниҳонвожаеро барои дастгоҳи худ танзим намоед.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Барои муҳофизат кардани тарзҳои пардохти нигоҳдошташудаи худ аз дастрасии озод, агар касе дигар аз дастгоҳи шумо истифода барад, шаклвораи қулфи экран, рамзи PIN ё ниҳонвожаеро барои дастгоҳи худ танзим намоед.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Ҳозир насб кунед</string>
@@ -2005,8 +1977,6 @@
<string name="credit_cards_warning_dialog_later">Дертар</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Қулфи дастгоҳи худро кушоед</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Барои истифодаи маълумоти кортҳои кредитии нигоҳдошташуда, қулфро кушоед</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Барои истифодаи тарзҳои пардохти нигоҳдоштаи худ, қулфро кушоед</string>
@@ -2016,12 +1986,6 @@
<string name="addresses_edit_address">Таҳрир кардани нишонӣ</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Идоракунии нишониҳо</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Ном</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Номи падар</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Насаб</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Ном</string>
<!-- The header for the street address of an address -->
@@ -2048,8 +2012,6 @@
<string name="addressess_delete_address_button">Нест кардани нишонӣ</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Шумо мутмаин ҳастед, ки мехоҳед ин нишониро нест намоед?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Ин нишониро нест мекунед?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Нест кардан</string>
@@ -2146,50 +2108,30 @@
<string name="login_menu_delete_button">Нест кардан</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Таҳрир кардан</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Шумо мутмаин ҳастед, ки мехоҳед ин воридшавиро нест намоед?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Шумо мутмаин ҳастед, ки мехоҳед ин ниҳонвожаро нест намоед?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Нест кардан</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Бекор кардан</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Имконоти воридшавӣ</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Инконоти ниҳонвожа</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Майдони матни таҳриршаванда барои нишонии сомонаи воридшавӣ.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Майдони матни таҳриршаванда барои нишонии сомона.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Майдони матни таҳриршаванда барои номи корбарии воридшавӣ.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Майдони матни таҳриршаванда барои номи корбар.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Майдони матни таҳриршаванда барои ниҳонвожаи воридшавӣ.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Майдони матни таҳриршаванда барои ниҳонвожа.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Нигоҳ доштани тағйирот барои воридшавӣ</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Тағийротро нигоҳ медорад.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Таҳрир кардан</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Таҳрир кардани ниҳонвожа</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Илова кардани воридшавии нав</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Илова кардани ниҳонвожа</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Ниҳонвожа лозим аст</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Ниҳонвожаеро ворид намоед</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Номи корбар лозим аст</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Номи корбареро ворид намоед</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Номи сервер лозим аст</string>
@@ -2600,6 +2542,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Пӯшидани саҳифаи тарҷума</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Баъзе танзимот муваққатан дастнорасанд.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Тарҷумаҳо</string>
@@ -2623,6 +2568,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Барои идоракунии хусусиятҳои «Ҳамеша тарҷума карда шавад» ва «Ҳеҷ вақт тарҷума карда нашавад» забонеро интихоб намоед.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Забонҳоро бор карда натавонист. Лутфан, баъдтар такрор кунед.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Тарҷума пешниҳод карда шавад (Ба таври пешфарз)</string>
@@ -2645,6 +2593,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Тоза кардани «%1$s»</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Сомонаҳоро бор карда натавонист. Лутфан, баъдтар такрор кунед.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">«%1$s»-ро нест мекунед?</string>
@@ -2722,13 +2672,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Ба қафо гузаштан</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Кушодани менюи таҳиякунандаи ислоҳи хатоҳо</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Абзорҳои варақаҳо</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Шумораи варақаҳо</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Фаъол</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Фаъол</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Фаъол</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Ғайрифаъол</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2739,6 +2694,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Абзори эҷоди варақаҳо</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Шумораи варақаҳое, ки эҷод карда мешаванд</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Майдони матн холӣ аст</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Лутфан, танҳо ададҳои бутуни мусбатро ворид кунед</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Лутфан, рақамеро зиёда аз сифр ворид намоед</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Шумораи ҳадди аксари варақаҳое (%1$s), ки дар як амалиёт эҷод карда мешаванд, зиёд шуд</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Илова кардан ба варақаҳои фаъол</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2755,12 +2720,12 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Огоҳномаи махфият</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Пешниҳод кардан</string>
+ <string name="micro_survey_submit_button_label">Пешниҳод кардан</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Пӯшидан</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Пӯшидан</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Ташаккур барои изҳори назари шумо!</string>
+ <string name="micro_survey_feedback_confirmation">Ташаккур барои изҳори назари шумо!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Хеле қаноатманд</string>
@@ -2773,6 +2738,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Хеле дарғазаб</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Кушодани саволнома</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Пӯшидани саволнома</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Пӯшидан</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Воридшавиҳо</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-tr/strings.xml b/mobile/android/fenix/app/src/main/res/values-tr/strings.xml
index 45d931495b..48587d9d04 100644
--- a/mobile/android/fenix/app/src/main/res/values-tr/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-tr/strings.xml
@@ -200,6 +200,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Eklentiler</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Uzantılar</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Uzantıları yönet</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Daha fazla uzantı keşfet</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Hesap bilgileri</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -218,6 +222,8 @@
<string name="browser_menu_open_in_regular_tab">Normal sekmede aç</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Ana ekrana ekle</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Ana ekrana ekle…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Yükle</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -229,9 +235,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Sayfayı çevir</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Koleksiyona kaydet…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Koleksiyona kaydet</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Paylaş</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Paylaş…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">%1$s ile aç</string>
@@ -285,6 +295,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Kaydet</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Sayfayı yer imlerine ekle</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Yer imini düzenle</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">PDF olarak kaydet…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Okuyucu görünümünü aç</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Okuyucu görünümünü kapat</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Sayfayı çevir…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s diline çevrildi</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Yazdır…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Şu anda uzantı yok</string>
@@ -382,8 +410,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox gizlilik bildirimi</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Ayrıntıları gizlilik bildirimimizde bulabilirsiniz</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Sizi güvende tutmayı seviyoruz</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -593,7 +619,9 @@
<!-- Preference for language -->
<string name="preferences_language">Dil</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Çeviri</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Çeviri</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Çeviriler</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Veri seçenekleri</string>
<!-- Preference for data collection -->
@@ -667,10 +695,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Gerekli</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">İsteğe bağlı</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Web sitesi verilerini okuma ve değiştirme</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Siteyi sil</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Tüm siteler için izin ver</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -795,8 +819,6 @@
<string name="preferences_sync_history">Geçmiş</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Yer imleri</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesaplar</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Parolalar</string>
<!-- Preference for syncing tabs -->
@@ -823,8 +845,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s - %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kredi kartları</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Ödeme yöntemleri</string>
<!-- Preference for syncing addresses -->
@@ -840,6 +860,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">%s üzerinden gelen sekme</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%2$d %1$s sekmesi kapatıldı </string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Son kapatılan sekmeleri göster</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">İstisnalar</string>
@@ -1770,12 +1798,8 @@
<string name="add_to_homescreen_description_2">Bu siteyi cihazınızın ana ekranına ekleyerek ona hızlıca erişebilir, site bir uygulamaymış gibi daha hızlı gezinti yapabilirsiniz.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesaplar ve parolalar</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Parolalar</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Kullanıcı adı ve parolaları kaydet</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Parolaları kaydet</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Kaydetmeyi sor</string>
@@ -1790,46 +1814,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Cihazınızdaki diğer uygulamalarda kullanıcı adı ve parolalar doldurulsun.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesap ekle</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Parola ekle</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesapları eşitle</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Parolaları eşitle</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesapları cihazlar arasında eşitle</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Parolaları cihazlar arasında eşitle</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Kayıtlı hesaplar</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Kayıtlı parolalar</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Kaydettiğiniz veya %s ile eşitlediğiniz hesaplar burada görünecektir.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">%s tarayıcısına kaydettiğiniz veya eşitlediğiniz parolalar burada listelenecektir. Kaydettiğiniz tüm parolalar şifrelenir.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Sync hakkında bilgi alın.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Eşitlemeyle ilgili bilgi al</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">İstisnalar</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Kaydedilmeyen hesaplar ve parolalar burada görünecektir.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s, burada listelenen sitelerin parolalarını kaydetmeyecektir.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Bu sitelere ait hesaplar ve parolalar kaydedilmeyecektir.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s bu sitelerin parolalarını kaydetmeyecektir.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Tüm istisnaları sil</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesaplarda ara</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Parolalarda ara</string>
<!-- The header for the site that a login is for -->
@@ -1858,17 +1863,11 @@
<string name="saved_login_reveal_password">Parolayı göster</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Parolayı gizle</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Kayıtlı hesaplarınızı görmek için kilidi açın</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Kayıtlı parolalarınızı görmek için kilidi açın</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesaplarınızı güvence altına alın</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Kayıtlı parolalarınızı güvence altına alın</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Cihazınız başka birinin eline geçerse kayıtlı hesaplarına erişilmesini önlemek için cihaz kilidi deseni, PIN veya parola ayarlayın.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Cihazınız başka birinin eline geçerse kayıtlı parolalarınıza erişilmesini önlemek için cihaz kilidi deseni, PIN veya parola ayarlayın.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Daha sonra</string>
@@ -1886,8 +1885,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Ad (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Son kullanım</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesapları sırala menüsü</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Parolaları sırala menüsü</string>
@@ -1897,41 +1894,27 @@
<string name="preferences_autofill">Otomatik doldurma</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Adresler</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kredi kartları</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Ödeme yöntemleri</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kartları kaydedip otomatik doldur</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Ödeme yöntemlerini kaydet ve doldur</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Veriler şifrelenir</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s kaydettiğiniz tüm ödeme yöntemlerini şifreler</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Kartları cihazlar arasında eşitle</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Kartları eşitle</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Kredi kartı ekle</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Kart ekle</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Kayıtlı kartları yönet</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Kartları yönet</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Adres ekle</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Adresleri yönet</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Adresleri kaydedip otomatik doldur</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Adresleri kaydet ve doldur</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Numaralar, e-posta ve gönderim adresleri gibi bilgileri dahil et</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Telefon numaraları ve e-posta adresleri de dahildir</string>
@@ -1955,8 +1938,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Kartı sil</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Bu kredi kartını silmek istediğinizden emin misiniz?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Kart silinsin mi?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Sil</string>
@@ -1970,24 +1951,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Kayıtlı kartlar</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lütfen geçerli bir kredi kartı numarası girin</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Geçerli bir kart numarası girin</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Lütfen bu alanı doldurun</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Adınızı yazın</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Kayıtlı kartlarınızı görmek için kilidi açın</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Kredi kartlarını güvence altına al</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Kayıtlı ödeme yöntemlerinizi güvence altına alın</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Cihazınız başka birinin eline geçerse kayıtlı kartlarınıza erişilmesini önlemek için cihaz kilidi deseni, PIN veya parola ayarlayın.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Cihazınız başka birinin eline geçerse kayıtlı ödeme yöntemlerinize erişilmesini önlemek için cihaz kilidi deseni, PIN veya parola ayarlayın.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Hemen ayarla</string>
@@ -1996,8 +1968,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Cihazınızın kilidini açın</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Depolanan kredi kartı bilgilerini kullanmak için kilidi açın</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Kayıtlı ödeme yöntemlerinizi kullanmak için kilidi açın</string>
@@ -2007,12 +1977,6 @@
<string name="addresses_edit_address">Adresi düzenle</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Adresleri yönet</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Ad</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">İkinci ad</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Soyadı</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Ad</string>
<!-- The header for the street address of an address -->
@@ -2039,8 +2003,6 @@
<string name="addressess_delete_address_button">Adresi sil</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Bu adresi silmek istediğinizden emin misiniz?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Bu adres silinsin mi?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Sil</string>
@@ -2138,49 +2100,29 @@
<string name="login_menu_delete_button">Sil</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Düzenle</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Bu hesabı silmek istediğinizden emin misiniz?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Bu parolayı silmek istediğinizden emin misiniz?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Sil</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Vazgeç</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesap seçenekleri</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Parola seçenekleri</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesabın web adresi için düzenlenebilir metin alanı.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Web sitesi adresi için düzenlenebilir metin alanı.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesabın kullanıcı adı için düzenlenebilir metin alanı.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Kullanıcı adı için düzenlenebilir metin alanı.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Hesabın parolası için düzenlenebilir metin alanı.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Parola için düzenlenebilir metin alanı.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Değişiklikleri hesaba kaydet.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Değişiklikleri kaydet.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Düzenle</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Parola düzenle</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Yeni hesap ekle</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Parola ekle</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Parola gerekli</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Parolayı girin</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Kullanıcı adı gereklidir</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Kullanıcı adını girin</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Sunucu gereklidir</string>
@@ -2590,6 +2532,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Çeviriler sayfasını kapat</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Bazı ayarlar geçici olarak kullanılamıyor.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Çeviriler</string>
@@ -2614,6 +2559,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">”Her zaman çevir“ ve ”asla çevirme“ tercihlerini yönetmek için bir dil seçin.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Diller yüklenemedi. Lütfen daha sonra yeniden deneyin.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Çevirmeyi öner (varsayılan)</string>
@@ -2637,6 +2585,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s sitesini kaldır</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Siteler yüklenemedi. Lütfen daha sonra yeniden deneyin.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">%1$s silinsin mi?</string>
@@ -2715,13 +2665,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Geri git</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Hata ayıklama bölmesini aç</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Sekme araçları</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Sekme sayısı</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Aktif</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Aktif</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Aktif</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Pasif</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2732,6 +2687,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Sekme oluşturma aracı</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Oluşturulacak sekme sayısı</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Metin alanı boş</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Lütfen yalnızca pozitif tamsayı girin</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Lütfen sıfırdan büyük bir sayı girin</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Tek bir işlemde oluşturulabilecek maksimum sekme sayısı (%1$s) aşıldı</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Aktif sekmelere ekle</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2748,11 +2713,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Gizlilik Bildirimi</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Gönder</string>
+ <string name="micro_survey_submit_button_label">Gönder</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Kapat</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Kapat</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Geri bildiriminiz için teşekkürler!</string>
+ <string name="micro_survey_feedback_confirmation">Geri bildiriminiz için teşekkürler!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Çok memnunum</string>
<!-- Option for likert scale -->
@@ -2764,6 +2729,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Hiç memnun değilim</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Anketi aç</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Anketi kapat</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Kapat</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Hesaplar</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-ug/strings.xml b/mobile/android/fenix/app/src/main/res/values-ug/strings.xml
index 08c92ff266..2c820c15c1 100644
--- a/mobile/android/fenix/app/src/main/res/values-ug/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-ug/strings.xml
@@ -199,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">قوشۇلما</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">كېڭەيتمە</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">كېڭەيتىلمە باشقۇرۇش</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">تېخىمۇ كۆپ كېڭەيتمە بايقا</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">ھېسابات ئۇچۇرى</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -217,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">ئادەتتىكى بەتكۈچتە ئاچ</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">باش ئېكرانغا قوش</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">باش ئېكرانغا قوش…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">قاچىلاش</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -228,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">بەت تەرجىمىسى</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">يىغقۇچقا ساقلا…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">يىغقۇچقا ساقلا</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">ھەمبەھىرلەش</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">ھەمبەھىر…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">%1$s دا ئاچ</string>
@@ -281,6 +291,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">ساقلا</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">بۇ بەتنى خەتكۈچكە قوش</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">خەتكۈچ تەھرىر</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">PDF كە ساقلا…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">ئوقۇرمەن كۆرۈنۈشىنى ئاچ</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">ئوقۇرمەن كۆرۈنۈشىنى تاقا</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">بەت تەرجىمىسى…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">%1$s غا تەرجىمە قىلىندى</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">باس…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">بۇ يەردە كېڭەيتمە يوق</string>
@@ -374,8 +402,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox شەخسىيەت ئۇقتۇرۇشى</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">شەخسىيەت ئۇقتۇرۇشىنىڭ تەپسىلاتىنى ئوقۇڭ</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">بىخەتەرلىكىڭىزنى ساقلاشنى ياخشى كۆرىمىز</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -584,7 +610,9 @@
<string name="preferences_language">تىل</string>
<!-- Preference for translation -->
- <string name="preferences_translation">تەرجىمە</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">تەرجىمە</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">تەرجىمە</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">سانلىق مەلۇمات تاللاش</string>
<!-- Preference for data collection -->
@@ -656,10 +684,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">زۆرۈر</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">تاللاشچان</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">تور بېكەت سانلىق مەلۇماتىنى ئوقۇيدۇ ياكى ئۆزگەرتىدۇ</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">تور بېكەت ئۆچۈر</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">ھەممە تور بېكەتكە يول قويىدۇ</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -786,8 +810,6 @@
<string name="preferences_sync_history">تارىخ</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">خەتكۈچ</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىش</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">ئىم</string>
<!-- Preference for syncing tabs -->
@@ -812,8 +834,6 @@
The first parameter is the application name, the second is the device manufacturer name
and the third is the device model. -->
<string name="default_device_name_2">%2$s %3$s دىكى %1$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ئىناۋەتلىك كارتا</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">چىقىم قىلىش ئۇسۇلى</string>
<!-- Preference for syncing addresses -->
@@ -829,6 +849,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">%s بەتكۈچى</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s بەتكۈچ تاقالدى: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">يېقىندا تاقالغان بەتكۈچلەرنى كۆرسەت</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">مۇستەسنا</string>
@@ -1755,12 +1783,8 @@
<string name="add_to_homescreen_description_2">تېز سۈرئەتتە زىيارەت قىلىش ۋە ئەپكە ئوخشاش زىيارەت تۇيغۇسىغا ئېرىشىش ئۈچۈن، مەزكۇر تور بېكەتنى باش ئېكرانغا ئاسانلا قوشالايسىز.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىش ۋە ئىم</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">ئىم</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىش ۋە ئىم ساقلا</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">ئىم ساقلا</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">ساقلاشنى سورا</string>
@@ -1774,46 +1798,28 @@
<string name="preferences_android_autofill">باشقا ئەپلەردە ئاپتوماتىك تولدۇرىدۇ</string>
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">ئۈسكۈنىڭىزدىكى باشقا ئەپلەردە ئىشلەتكۈچى ئىسمى ۋە ئىمنى تولدۇرىدۇ.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىشنى قوش</string>
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">ئىم قوش</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىشنى قەدەمداشلا</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">ئىم قەدەمداشلا</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">ئۈسكۈنىلەر ئارا قەدەمداشلا</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">ئىمنى ئۈسكۈنىلەر ئارا قەدەمداشلايدۇ</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">ساقلانغان كىرىش</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">ساقلانغان ئىم</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">سىز ساقلىغان كىرىش ياكى %s بىلەن بولغان قەدەمداش بۇ جايدا كۆرۈنىدۇ.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">سىز ساقلىغان ياكى %s غا قەدەمداشلىغان ئىم بۇ يەردە كۆرسىتىلىدۇ. سىز ساقلىغان بارلىق ئىم مەخپىيلەشتۈرۈلگەن.</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">قەدەمداش ھەققىدىكى تەپسىلاتلار.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">قەدەمداش ھەققىدىكى تەپسىلاتلار</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">مۇستەسنا</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">ساقلانمىغان كىرىش ۋە ئىم بۇ يەردە كۆرسىتىلىدۇ.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">بۇ جايدا كۆرسىتىلگەن تور بېكەتلەر ئۈچۈن %s ئىم ساقلىمايدۇ.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">بۇ تور بېكەتلەرنىڭ كىرىش ۋە ئىم ئۇچۇرلىرى ساقلانمايدۇ.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">بۇ تور بېكەتلەر ئۈچۈن %s ئىم ساقلىمايدۇ.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">ھەممە مۇستەسنالارنى ئۆچۈرىدۇ</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىش خاتىرىسىنى ئىزدە</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">پارول ئىزدەش</string>
<!-- The header for the site that a login is for -->
@@ -1843,17 +1849,11 @@
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">ئىم يوشۇر</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ساقلانغان كىرىشلىرىڭىزنى كۆرۈش ئۈچۈن قۇلۇپ ئېچىڭ</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">ساقلانغان پارولىڭىزنى كۆرۈش ئۈچۈن قۇلۇپ ئېچىڭ</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىش ۋە ئىمنى قوغدايدۇ</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">ساقلانغان ئىملىرىڭىز شىفىرلىنىدۇ</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ئۈسكۈنە قۇلۇپلاش ئەندىزىسى، PIN ياكى ئىم ئورنىتىشنى تەڭشىسىڭىز، ئۈسكۈنىڭىز باشقىلارنىڭ قولىدا بولسىمۇ ساقلانغان تىزىمغا كىرىش ئۇچۇرى ۋە ئىمنى زىيارەت قىلالمايدۇ.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">ئۈسكۈنە قۇلۇپلاش ئەندىزىسى، PIN ياكى ئىم ئورنىتىشنى تەڭشىسىڭىز، ئۈسكۈنىڭىز باشقىلارنىڭ قولىدا بولسىمۇ ساقلانغان ئىملىرىڭىزنى زىيارەت قىلالمايدۇ.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">كېيىنچە</string>
@@ -1871,8 +1871,6 @@
<string name="saved_logins_sort_strategy_alphabetically">ئىسمى (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">ئاخىرقى قېتىم ئىشلىتىلگەن</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىش تىزىملىكىنى تەرتىپلەيدۇ</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">ئىم تىزىملىكىنى تەرتىپلە</string>
@@ -1882,40 +1880,26 @@
<string name="preferences_autofill">ئاپتوماتىك تولدۇر</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">ئادرېس</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ئىناۋەتلىك كارتا</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">چىقىم قىلىش ئۇسۇلى</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">كارتا ساقلاش ۋە ئاپتوماتىك تولدۇرۇش</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">چىقىم قىلىش ئۇسۇلىنى ساقلاپ ۋە تولدۇرىدۇ</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">سانلىق مەلۇمات شىفىرلانغان</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">سىز ساقلىغان بارلىق چىقىم قىلىش ئۇسۇللىرىنى %s شىفىرلايدۇ</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">كارتىنى ئۈسكۈنىلەر ئارا قەدەمداشلايدۇ</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">كارتا قەدەمداشلا</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">ئىناۋەتلىك كارتا قوش</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">كارتا قوش</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">ساقلانغان كارتا باشقۇرۇش</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">كارتا باشقۇرۇش</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">ئادرېس قوش</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">ئادرېس باشقۇرۇش</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">ئادرېسلارنى ساقلاش ۋە ئاپتوماتىك تولدۇرۇش</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">ئادرېس ساقلاپ تولدۇرىدۇ</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">سان، ئېلخەت ۋە توشۇش ئادرېسى قاتارلىق ئۇچۇرلارنى ئۆز ئىچىگە ئالىدۇ</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">تېلېفون نومۇرى ۋە ئېلخەت ئادرېسىنى ئۆز ئىچىگە ئالىدۇ</string>
@@ -1939,8 +1923,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">كارتىنى ئۆچۈر</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">بۇ ئىناۋەتلىك كارتىنى راستىنلا ئۆچۈرەمسىز؟</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">كارتىنى ئۆچۈرەمدۇ؟</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">ئۆچۈر</string>
@@ -1952,24 +1934,16 @@
<string name="credit_cards_cancel_button">ۋاز كەچ</string>
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">ساقلانغان كارتا</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ئىناۋەتلىك كارتا نومۇرىنى كىرگۈزۈڭ</string>
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">ئىناۋەتلىك كارتا نومۇرى كىرگۈزۈلىدۇ</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">بۇ بۆلەكنى تولدۇرۇڭ</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">ئات قوش</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">ساقلانغان كارتىلىرىڭىزنى كۆرۈش ئۈچۈن قۇلۇپ ئېچىڭ</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">ئىناۋەتلىك كارتىڭىزنى شىفىرلايدۇ</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">ساقلانغان چىقىم قىلىش ئۇسۇللىرىڭىز شىفىرلىنىدۇ</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ئۈسكۈنە قۇلۇپلاش ئەندىزىسى، PIN ياكى ئىم ئورنىتىشنى تەڭشىسىڭىز، ئۈسكۈنىڭىز باشقىلارنىڭ قولىدا بولسىمۇ ساقلانغان ئىناۋەتلىك كارتىڭىزنى زىيارەت قىلالمايدۇ.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">ئۈسكۈنە قۇلۇپلاش ئەندىزىسى، PIN ياكى ئىم ئورنىتىشنى تەڭشىسىڭىز، ئۈسكۈنىڭىز باشقىلارنىڭ قولىدا بولسىمۇ ساقلانغان چىقىم قىلىش ئۇسۇلىڭىزنى زىيارەت قىلالمايدۇ.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">ھازىر تەڭشە</string>
@@ -1977,8 +1951,6 @@
<string name="credit_cards_warning_dialog_later">كېيىنچە</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">ئۈسكۈنىڭىزنىڭ قۇلۇپىنى ئېچىڭ</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">ساقلانغان ئىناۋەتلىك كارتا ئۇچۇرلىرىنى ئىشلىتىش ئۈچۈن قۇلۇپ ئېچىڭ</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">ساقلانغان چىقىم قىلىش ئۇسۇلىنى ئىشلىتىش ئۈچۈن قۇلۇپ ئېچىڭ</string>
<!-- Title of the "Add address" screen -->
@@ -1987,12 +1959,6 @@
<string name="addresses_edit_address">ئادرېس تەھرىر</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">ئادرېس باشقۇرۇش</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">ئىسمى</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">ئوتتۇرا ئىسمى</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">تەگئات</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">ئىسمى</string>
<!-- The header for the street address of an address -->
@@ -2018,8 +1984,6 @@
<!-- The text for the "Delete address" button for deleting an address -->
<string name="addressess_delete_address_button">ئادرېس ئۆچۈر</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">بۇ ئادرېسنى راستىنلا ئۆچۈرەمسىز؟</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">بۇ ئادرېسنى ئۆچۈرەمدۇ؟</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">ئۆچۈر</string>
@@ -2117,50 +2081,30 @@
<string name="login_menu_delete_button">ئۆچۈر</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">تەھرىر</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">بۇ كىرىشنى راستىنلا ئۆچۈرەمسىز؟</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">بۇ ئىمنى راستىنلا ئۆچۈرەمسىز؟</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">ئۆچۈر</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">ۋاز كەچ</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىش تاللانمىلىرى</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">ئىم تاللانمىسى</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىشنىڭ تور ئادرېسىنى تەھرىرلىگىلى بولىدىغان تېكىست بۆلىكى.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">تور بېكەت ئادرېسىنىڭ تەھرىرلىگىلى بولىدىغان تېكىست بۆلىكى.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىشنىڭ ئىشلەتكۈچى ئىسمىنى تەھرىرلىگىلى بولىدىغان تېكىست بۆلىكى.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">ئىشلەتكۈچى ئاتىنىڭ تەھرىرلىگىلى بولىدىغان تېكىست بۆلىكى.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىشنىڭ ئىمىنى تەھرىرلىگىلى بولىدىغان تېكىست بۆلىكى.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">ئىمنىڭ تەھرىرلىگىلى بولىدىغان تېكىست بۆلىكى.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">كىرىش ئۆزگەرتىشلىرىنى ساقلايدۇ.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">ئۆزگەرتىشلەرنى ساقلايدۇ.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">تەھرىر</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">ئىم تەھرىر</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">يېڭى كىرىش قوش</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">ئىم قوش</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">ئىم زۆرۈر</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">ئىم كىرگۈزۈلىدۇ</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">ئىشلەتكۈچى ئىسمى زۆرۈر</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">ئىشلەتكۈچى ئاتى كىرگۈزۈلىدۇ</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">مۇلازىم ئىسمى زۆرۈر</string>
@@ -2571,6 +2515,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">تەرجىمە جەدۋىلىنى تاقا</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">بەزى تەڭشەكلەرنى ۋاقىتلىق ئىشلەتكىلى بولمايدۇ.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">تەرجىمە</string>
@@ -2594,6 +2541,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">«ھەمىشە تەرجىمە قىل» ۋە «ھەرگىز تەرجىمە قىلما» مايىللىقىدىن باشقۇرىدىغان تىل تاللىنىدۇ.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">تىلنى يۈكلىيەلمەيدۇ. كېيىن قايتا تەكشۈرۈڭ.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">تەرجىمە قىلىش (كۆڭۈلدىكى)</string>
@@ -2617,6 +2567,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">%1$s نى چىقىرىۋەت</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">تور بېكەتنى يۈكلىيەلمەيدۇ. كېيىن قايتا تەكشۈرۈڭ.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference"> %1$s نى ئۆچۈرەمدۇ؟</string>
@@ -2694,13 +2646,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">كەينىگە قايت</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">سازلاش تارتمىسىنى ئاچ</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">بەتكۈچ قوراللىرى</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">بەتكۈچ سانى</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">ئاكتىپ</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">ئاكتىپ</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">ئاكتىپ</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">ئىشلەتمىگەن</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2711,6 +2668,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">بەتكۈچ قۇرۇش قورالى</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">قۇرىدىغان بەتكۈچ سانى</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">تېكىست بۆلىكى بوش</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">پەقەت مۇسپەت پۈتۈن سان كىرگۈزۈڭ</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">نۆلدىن چوڭ سان كىرگۈزۈڭ</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">بىر مەشغۇلاتتا ھاسىللايدىغان ئەڭ كۆپ بەتكۈچ (%1$s) سانىدىن ئېشىپ كەتتى</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">ئاكتىپ بەتكۈچكە قوش</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2727,11 +2694,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">شەخسىيەت ئۇقتۇرۇشى</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">يوللا</string>
+ <string name="micro_survey_submit_button_label">يوللا</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">تاقا</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">تاقا</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">قايتۇرما ئىنكاسىڭىزغا رەھمەت!</string>
+ <string name="micro_survey_feedback_confirmation">قايتۇرما ئىنكاسىڭىزغا رەھمەت!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">بەك رازى</string>
<!-- Option for likert scale -->
@@ -2744,6 +2711,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">بەك نارازى</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">راي سىناشنى ئاچ</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">راي سىناشنى تاقا</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">تاقا</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">كىرىش</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-uk/strings.xml b/mobile/android/fenix/app/src/main/res/values-uk/strings.xml
index a03bc42b8b..0800dff8c6 100644
--- a/mobile/android/fenix/app/src/main/res/values-uk/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-uk/strings.xml
@@ -198,6 +198,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Додатки</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Розширення</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Керувати розширеннями</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Знайти більше розширень</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Ваш обліковий запис</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -217,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">Відкрити у звичайній вкладці</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Додати на головний екран</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Додати на головний екран…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Встановити</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -228,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Перекласти сторінку</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Зберегти до збірки…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Зберегти до збірки</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Поділитися</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Поділитися…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Відкрити в %1$s</string>
@@ -284,6 +294,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Зберегти</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Додати сторінку до закладок</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Редагувати закладку</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Зберегти як PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Увімкнути режим читання</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Вимкнути режим читання</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Перекласти сторінку…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Перекладено на %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Друкувати…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Тут немає розширень</string>
@@ -381,8 +409,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Положення про приватність Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Докладніше в нашому положенні про приватність</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Ми дбаємо про вашу безпеку</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -593,7 +619,9 @@
<!-- Preference for language -->
<string name="preferences_language">Мова</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Переклад</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Переклад</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Переклади</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Вибір даних</string>
<!-- Preference for data collection -->
@@ -668,10 +696,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Обов\'язково</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Необов\'язково</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Читати та змінювати дані вебсайту</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Видалити вебсайт</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Дозволити для всіх сайтів</string>
@@ -798,8 +822,6 @@
<string name="preferences_sync_history">Історію</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Закладки</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Паролі</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Паролі</string>
<!-- Preference for syncing tabs -->
@@ -826,8 +848,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s на %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Кредитні картки</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Способи оплати</string>
<!-- Preference for syncing addresses -->
@@ -844,6 +864,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Вкладка з %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">Закрито вкладок %1$s: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Переглянути недавно закриті вкладки</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Винятки</string>
@@ -1772,12 +1800,8 @@
<string name="add_to_homescreen_description_2">Ви можете легко додати цей вебсайт на головний екран вашого пристрою, щоб мати миттєвий доступ до нього і працювати швидше.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Паролі</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Паролі</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Зберігати паролі</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Зберігати паролі</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Питати про збереження</string>
@@ -1792,48 +1816,29 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Заповнювати імена користувачів і паролі в інших програмах на цьому пристрої.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Додати пароль</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Додати пароль</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Синхронізація паролів</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Синхронізувати паролі</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Синхронізувати паролі між пристроями</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Синхронізація паролів між пристроями</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Збережені паролі</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Збережені паролі</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Тут з’являтимуться ваші збережені та синхронізовані з %s паролі.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Тут з\'являтимуться паролі, які ви зберігаєте чи синхронізуєте в %s. Усі паролі зашифровано.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Докладніше про синхронізацію.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Докладніше про синхронізацію</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Винятки</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Не збережені паролі з’являтимуться тут.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s не зберігатиме паролі для вказаних тут сайтів.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Паролі для цих сайтів не зберігатимуться.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s не зберігатиме паролі для цих сайтів.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Видалити всі винятки</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Шукати паролі</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Пошук паролів</string>
<!-- The header for the site that a login is for -->
@@ -1863,17 +1868,11 @@
<string name="saved_login_reveal_password">Показати пароль</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Приховати пароль</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Розблокуйте для перегляду збережених паролів</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Розблокуйте, щоб переглянути збережені паролі</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Захистіть свої паролі</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Захистіть збережені паролі</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Встановіть графічний ключ, PIN-код чи пароль для захисту збережених паролів від інших, хто може отримати доступ до вашого пристрою.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Встановіть графічний ключ, PIN-код чи пароль для захисту збережених паролів від інших, хто може отримати доступ до вашого пристрою.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Пізніше</string>
@@ -1891,9 +1890,6 @@
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Востаннє використано</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Меню впорядкування паролів</string>
-
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Меню сортування паролів</string>
@@ -1902,41 +1898,27 @@
<string name="preferences_autofill">Автозаповнення</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Адреси</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Кредитні картки</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Способи оплати</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Зберігати та автоматично заповнювати дані карток</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Зберігати й заповнювати способи оплати</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Дані зашифровано</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s шифрує всі збережені способи оплати</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Синхронізувати картки між пристроями</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Синхронізувати картки</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Додати кредитну картку</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Додати картку</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Керувати збереженими картками</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Керувати картками</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Додати адресу</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Керувати адресами</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Зберігати та автоматично заповнювати адреси</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Зберігати й заповнювати адреси</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Включити дані, як-от номери, електронні адреси та адреси доставлення</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Містить номери телефонів і адреси електронної пошти</string>
@@ -1960,8 +1942,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Видалити картку</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ви впевнені, що хочете видалити цю кредитну картку?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Видалити картку?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Видалити</string>
@@ -1975,24 +1955,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Збережені картки</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Введіть дійсний номер кредитної картки</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Введіть дійсний номер картки</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Будь ласка, заповніть це поле</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Додайте назву</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Розблокуйте для перегляду збережених карток</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Захистіть свої банківські картки</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Захистіть свої збережені способи оплати</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Встановіть графічний ключ, PIN-код чи пароль для захисту збережених банківських карток від інших, хто може отримати доступ до вашого пристрою.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Встановіть графічний ключ, PIN-код чи пароль для захисту збережених способів оплати від інших, хто може отримати доступ до вашого пристрою.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Встановити</string>
@@ -2001,9 +1972,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Розблокуйте свій пристрій</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Розблокуйте, щоб використовувати збережену інформацію про кредитну картку</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Розблокуйте, щоб використати збережені способи оплати</string>
<!-- Title of the "Add address" screen -->
@@ -2012,12 +1980,6 @@
<string name="addresses_edit_address">Редагувати адресу</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Керувати адресами</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Ім’я</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">По батькові</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Прізвище</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Ім’я</string>
<!-- The header for the street address of an address -->
@@ -2044,8 +2006,6 @@
<string name="addressess_delete_address_button">Видалити адресу</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Ви дійсно хочете видалити цю адресу?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Видалити цю адресу?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Видалити</string>
@@ -2144,49 +2104,29 @@
<string name="login_menu_delete_button">Видалити</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Змінити</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Ви дійсно хочете видалити цей запис?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Ви дійсно хочете видалити цей пароль?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Видалити</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Скасувати</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Опції запису</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Параметри пароля</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Текстове поле для редагування вебадреси запису.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Текстове поле для редагування адреси вебсайту.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Текстове поле для редагування імені користувача запису.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Текстове поле для редагування імені користувача.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Текстове поле для редагування пароля запису.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Текстове поле для редагування пароля.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Зберегти зміни.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Зберегти зміни.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Змінити</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Редагувати пароль</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Додати новий пароль</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Додати пароль</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Потрібен пароль</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Введіть пароль</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Необхідно вказати ім’я користувача</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Введіть ім’я користувача</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Необхідно вказати назву вузла</string>
@@ -2594,6 +2534,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Закрити блок перекладів</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Деякі налаштування тимчасово недоступні.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Переклади</string>
@@ -2617,6 +2560,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Виберіть мову, щоб керувати налаштуваннями ”завжди перекладати“ та ”ніколи не перекладати“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Не вдалося завантажити мови. Повторіть спробу пізніше.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Пропонувати переклад (типово)</string>
@@ -2641,6 +2587,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Вилучити %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Не вдалося завантажити сайти. Повторіть спробу пізніше.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Видалити %1$s?</string>
@@ -2718,13 +2666,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Перейти назад</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Відкрити панель налагодження</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Інструменти вкладки</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Кількість вкладок</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Активні</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Активні</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Активні</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Неактивні</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2735,6 +2688,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Інструмент створення вкладок</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Кількість вкладок для створення</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Текстове поле порожнє</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Будь ласка, введіть лише додатні цілі числа</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Будь ласка, введіть число більше нуля</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Перевищено максимальну кількість вкладок (%1$s), яку можна створити за одну операцію</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Додати до активних вкладок</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2751,11 +2714,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Повідомлення про приватність</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Надіслати</string>
+ <string name="micro_survey_submit_button_label">Надіслати</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Закрити</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Закрити</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Дякуємо за ваш відгук!</string>
+ <string name="micro_survey_feedback_confirmation">Дякуємо за ваш відгук!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Дуже задоволені</string>
<!-- Option for likert scale -->
@@ -2767,6 +2730,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Дуже незадоволені</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Відкрити опитування</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Закрити опитування</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Закрити</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Паролі</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-vi/strings.xml b/mobile/android/fenix/app/src/main/res/values-vi/strings.xml
index 4b8cd97821..0428dce517 100644
--- a/mobile/android/fenix/app/src/main/res/values-vi/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-vi/strings.xml
@@ -199,6 +199,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Tiện ích</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Tiện ích</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Quản lý tiện ích</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Khám phá tiện tích khác</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Thông tin tài khoản</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -217,6 +221,8 @@
<string name="browser_menu_open_in_regular_tab">Mở trong thẻ thông thường</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Thêm vào màn hình chính</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Thêm vào màn hình chính…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Cài đặt</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -228,9 +234,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Dịch trang</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Lưu vào bộ sưu tập…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Lưu vào bộ sưu tập</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Chia sẻ</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Chia sẻ…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Mở bằng %1$s</string>
@@ -283,6 +293,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">Lưu</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Đánh dấu trang này</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Chỉnh sửa dấu trang</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Lưu dưới dạng PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Bật chế độ đọc sách</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Tắt chế độ đọc sách</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Dịch trang…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Đã dịch sang %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">In…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">Không có tiện ích ở đây</string>
@@ -379,8 +407,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Thông báo về quyền riêng tư Firefox</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">Tìm hiểu thêm trong thông báo bảo mật của chúng tôi</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">Chúng tôi thích giữ an toàn cho bạn</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -589,7 +615,9 @@
<!-- Preference for language -->
<string name="preferences_language">Ngôn ngữ</string>
<!-- Preference for translation -->
- <string name="preferences_translation">Dịch</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Dịch</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Dịch</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Lựa chọn dữ liệu</string>
<!-- Preference for data collection -->
@@ -662,10 +690,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">Bắt buộc</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">Không bắt buộc</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">Đọc và thay đổi dữ liệu trang web</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">Xóa trang web</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">Cho phép tất cả các trang web</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -790,8 +814,6 @@
<string name="preferences_sync_history">Lịch sử</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">Dấu trang</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Đăng nhập</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">Mật khẩu</string>
<!-- Preference for syncing tabs -->
@@ -818,8 +840,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%1$s trên %2$s %3$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Thẻ tín dụng</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">Phương thức thanh toán</string>
<!-- Preference for syncing addresses -->
@@ -836,6 +856,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Thẻ từ %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%2$d thẻ %1$s đã đóng</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">Xem thẻ đã đóng gần đây</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Ngoại lệ</string>
@@ -1755,12 +1783,8 @@
<string name="add_to_homescreen_description_2">Bạn có thể dễ dàng thêm trang web vào màn hình chính thiết bị của bạn để có thể truy cập và duyệt web nhanh hơn với trải nghiệm giống như trên ứng dụng.</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">Thông tin đăng nhập và mật khẩu</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">Mật khẩu</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Lưu thông tin đăng nhập và mật khẩu</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">Lưu mật khẩu</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">Yêu cầu để lưu</string>
@@ -1775,47 +1799,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">Điền tên người dùng và mật khẩu vào các ứng dụng khác trên thiết bị của bạn.</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Thêm thông tin đăng nhập</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">Thêm mật khẩu</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Đồng bộ hóa thông tin đăng nhập</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">Đồng bộ mật khẩu</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">Đồng bộ hóa thông tin đăng nhập trên các thiết bị</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">Đồng bộ hóa mật khẩu giữa các thiết bị</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">Thông tin đăng nhập đã lưu</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">Mật khẩu đã lưu</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">Thông tin đăng nhập bạn lưu hoặc đồng bộ hóa với %s sẽ hiển thị tại đây.</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">Mật khẩu bạn lưu hoặc đồng bộ hóa với %s sẽ được liệt kê ở đây. Tất cả mật khẩu bạn lưu đều được mã hóa.
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">Tìm hiểu thêm về đồng bộ hóa.</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">Tìm hiểu thêm về đồng bộ hoá</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">Ngoại lệ</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">Thông tin đăng nhập và mật khẩu không được lưu sẽ được hiển thị ở đây.</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s sẽ không lưu mật khẩu cho các trang được liệt kê ở đây.</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Thông tin đăng nhập và mật khẩu sẽ không được lưu cho các trang web này.</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s sẽ không lưu mật khẩu cho các trang web này.</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">Xóa tất cả ngoại lệ</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">Tìm thông tin đăng nhập</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">Tìm kiếm mật khẩu</string>
<!-- The header for the site that a login is for -->
@@ -1844,17 +1849,11 @@
<string name="saved_login_reveal_password">Hiện mật khẩu</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">Ẩn mật khẩu</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Mở khóa để xem thông tin đăng nhập đã lưu của bạn</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">Mở khóa để xem mật khẩu đã lưu của bạn</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Bảo mật thông tin đăng nhập và mật khẩu của bạn</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">Giữ mật khẩu đã lưu của bạn một cách an toàn</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Thiết lập mẫu khóa thiết bị, mã PIN hoặc mật khẩu để bảo vệ thông tin đăng nhập và mật khẩu đã lưu của bạn khỏi bị truy cập nếu người khác lấy được thiết bị của bạn.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">Đặt mật khẩu thiết bị dạng mẫu hình, mã PIN hoặc mật khẩu để bảo vệ mật khẩu đã lưu của bạn không bị truy cập nếu người khác lấy được thiết bị của bạn.</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">Để sau</string>
@@ -1871,8 +1870,6 @@
<string name="saved_logins_sort_strategy_alphabetically">Tên (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Sử dụng lần cuối</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Sắp xếp menu đăng nhập</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">Menu sắp xếp mật khẩu</string>
@@ -1882,41 +1879,27 @@
<string name="preferences_autofill">Tự động điền</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">Địa chỉ</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Thẻ tín dụng</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">Phương thức thanh toán</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Lưu và tự động điền thẻ tín dụng</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">Lưu và điền phương thức thanh toán</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Dữ liệu được mã hóa</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s mã hóa tất cả các phương thức thanh toán bạn lưu</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">Đồng bộ thông tin thẻ tín dụng trên các thiết bị</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">Đồng bộ hóa thẻ tín dụng</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">Thêm thẻ tín dụng</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">Thêm thẻ</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">Quản lý thẻ tín dụng đã lưu</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">Quản lý thẻ tín dụng</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">Thêm địa chỉ</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">Quản lý địa chỉ</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">Lưu và tự động điền địa chỉ</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">Lưu và điền địa chỉ</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">Bao gồm thông tin như số, email và địa chỉ giao hàng</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">Bao gồm số điện thoại và địa chỉ email</string>
@@ -1940,8 +1923,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">Xóa thẻ</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Bạn có chắc chắn muốn xóa thẻ tín dụng này không?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">Xoá thẻ?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">Xóa</string>
@@ -1955,24 +1936,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">Thẻ tín dụng đã lưu</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Vui lòng nhập số thẻ tín dụng hợp lệ</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">Nhập số thẻ hợp lệ</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Vui lòng điền vào trường này</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">Thêm tên</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">Mở khóa để xem các thẻ tín dụng đã lưu của bạn</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">Bảo mật thẻ tín dụng của bạn</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">Giữ các phương thức thanh toán đã lưu của bạn một cách an toàn</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Thiết lập màn hình khóa thiết bị với mẫu hình, mã PIN hoặc mật khẩu để bảo vệ thẻ tín dụng đã lưu của bạn không bị truy cập nếu người khác có thiết bị của bạn.</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">Đặt mật khẩu thiết bị dạng mẫu hình, mã PIN hoặc mật khẩu để bảo vệ phương thức thanh toán đã lưu của bạn không bị truy cập nếu người khác lấy đuọc thiết bị của bạn.</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">Thiết lập ngay</string>
@@ -1980,8 +1952,6 @@
<string name="credit_cards_warning_dialog_later">Để sau</string>
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">Mở khóa thiết bị của bạn</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Mở khóa để sử dụng thông tin thẻ tín dụng được lưu trữ</string>
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">Mở khóa để sử dụng các phương thức thanh toán đã lưu</string>
@@ -1991,12 +1961,6 @@
<string name="addresses_edit_address">Sửa địa chỉ</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">Quản lý địa chỉ</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">Tên</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">Tên đệm</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">Họ</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">Tên</string>
<!-- The header for the street address of an address -->
@@ -2023,8 +1987,6 @@
<string name="addressess_delete_address_button">Xóa địa chỉ</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">Bạn có chắc chắn muốn xóa địa chỉ này không?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">Xoá địa chỉ này?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">Xóa</string>
@@ -2122,49 +2084,29 @@
<string name="login_menu_delete_button">Xóa</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">Chỉnh sửa</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">Bạn có chắc chắn muốn xóa thông tin đăng nhập này không?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">Bạn có chắc chắn muốn xóa mật khẩu này?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">Xóa</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">Hủy bỏ</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">Tùy chọn thông tin đăng nhập</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">Cài đặt mật khẩu</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Trường văn bản có thể chỉnh sửa cho địa chỉ web của thông tin đăng nhập.</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">Trường văn bản có thể chỉnh sửa cho địa chỉ trang web.</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Trường văn bản có thể chỉnh sửa cho tên người dùng của thông tin đăng nhập.</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">Trường văn bản có thể chỉnh sửa cho tên người dùng.</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">Trường văn bản có thể chỉnh sửa cho mật khẩu của thông tin đăng nhập.</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">Trường văn bản có thể chỉnh sửa cho mật khẩu.</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Lưu các thay đổi vào thông tin đăng nhập.</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">Lưu thay đổi.</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">Chỉnh sửa</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">Chỉnh sửa mật khẩu</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">Thêm thông tin đăng nhập mới</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">Thêm mật khẩu</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Yêu cầu mật khẩu</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">Nhập mật khẩu</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">Yêu cầu tên đăng nhập</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">Nhập tên người dùng</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">Yêu cầu tên máy chủ</string>
@@ -2512,6 +2454,8 @@
<string name="translations_bottom_sheet_negative_button">Không phải bây giờ</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Hiển thị bản gốc</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Trang nguyên bản chưa dịch đã được tải</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Xong</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2569,6 +2513,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">Đóng bảng dịch</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">Một số cài đặt tạm thời không khả dụng.</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">Dịch</string>
@@ -2592,6 +2539,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">Hãy chọn một ngôn ngữ để quản lí các tùy chọn ”Luôn dịch“ và ”Không bao giờ dịch“.</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">Không thể tải ngôn ngữ. Vui lòng kiểm tra lại sau.</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">Đề xuất dịch (mặc định)</string>
@@ -2615,6 +2565,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">Xóa %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">Không thể tải trang web. Vui lòng kiểm tra lại sau.</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">Xóa %1$s?</string>
@@ -2692,13 +2644,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Điều hướng quay lại</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Mở ngăn gỡ lỗi</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">Công cụ thẻ</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Số lượng thẻ</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Hoạt động</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">Hoạt động</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Đang hoạt động</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Không hoạt động</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2709,6 +2666,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">Công cụ tạo thẻ</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">Số lượng thẻ cần tạo</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">Trường văn bản đang trống</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">Vui lòng chỉ nhập số nguyên dương</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">Vui lòng nhập số lớn hơn 0</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">Đã vượt quá số lượng thẻ tối đa (%1$s) có thể được tạo ra trong một thao tác</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">Thêm vào thẻ đang hoạt động</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2725,11 +2692,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">Thông báo bảo mật</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Gửi</string>
+ <string name="micro_survey_submit_button_label">Gửi</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">Đóng</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">Đóng</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Cảm ơn phản hồi của bạn!</string>
+ <string name="micro_survey_feedback_confirmation">Cảm ơn phản hồi của bạn!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">Rất hài lòng</string>
<!-- Option for likert scale -->
@@ -2741,6 +2708,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">Rất không hài lòng</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">Mở khảo sát</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">Đóng khảo sát</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">Đóng</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Thông tin đăng nhập</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-zh-rCN/strings.xml b/mobile/android/fenix/app/src/main/res/values-zh-rCN/strings.xml
index 9d9182dcd4..9d92f3c32d 100644
--- a/mobile/android/fenix/app/src/main/res/values-zh-rCN/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-zh-rCN/strings.xml
@@ -204,6 +204,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">附加组件</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">扩展</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">管理扩展</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">探索更多扩展</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">账户信息</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -222,6 +226,8 @@
<string name="browser_menu_open_in_regular_tab">在常规标签页中打开</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">添加到主屏幕</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">添加到主屏幕…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">安装</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -233,10 +239,14 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">翻译页面</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">保存到收藏集…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">保存到收藏集</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">分享</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">分享…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">用 %1$s 打开</string>
@@ -291,6 +301,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">保存</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">将此页面加入书签</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">编辑书签</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">另存为 PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">开启阅读模式</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">关闭阅读视图</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">翻译页面…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">已翻译成%1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">打印…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">暂无扩展</string>
@@ -390,8 +418,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox 隐私声明</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">阅读我们的隐私声明详细了解</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">我们乐于为您护航</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -603,7 +629,9 @@
<!-- Preference for language -->
<string name="preferences_language">语言</string>
<!-- Preference for translation -->
- <string name="preferences_translation">翻译</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">翻译</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">翻译</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">数据反馈</string>
<!-- Preference for data collection -->
@@ -677,10 +705,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">必需</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">可选</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">读取和更改网站数据</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">删除网站</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">允许在所有网站上运行</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -808,8 +832,6 @@
<string name="preferences_sync_history">历史记录</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">书签</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">登录信息</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">密码</string>
<!-- Preference for syncing tabs -->
@@ -836,9 +858,6 @@
and the third is the device model. -->
<string name="default_device_name_2">%2$s %3$s 上的 %1$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">信用卡</string>
-
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">付款方式</string>
<!-- Preference for syncing addresses -->
@@ -855,6 +874,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">来自 %s 的标签页</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">已关闭 %1$s 中的 %2$d 个标签页</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">查看最近关闭的标签页</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">例外</string>
@@ -1813,12 +1840,8 @@
<string name="add_to_homescreen_description_2">您可以轻松将此网站添加到设备主屏幕,以便迅捷访问并以类似应用的体验畅享浏览。</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">密码</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">密码</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">保存登录名和密码</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">保存密码</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">询问是否保存</string>
@@ -1835,47 +1858,28 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">在您设备上的其他应用程序中填充用户名和密码。</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">添加登录信息</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">添加密码</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">同步登录信息</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">同步密码</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">跨设备同步登录信息</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">跨设备同步密码</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">保存的登录信息</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">保存的密码</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">您保存或同步到 %s 的登录信息将显示于此处。</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">保存和同步到 %s 的密码会显示在这里,所有密码均已加密保存。
</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">详细了解“同步”。</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">详细了解同步功能</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">例外</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">不保存登录名和密码的网站将显示于此处。</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s 将不会保存此处所列网站的密码。</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">将不保存这些网站的登录名和密码。</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s 将不会保存这些网站的密码。</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">删除所有例外</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">搜索登录信息</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">搜索密码</string>
<!-- The header for the site that a login is for -->
@@ -1904,17 +1908,11 @@
<string name="saved_login_reveal_password">显示密码</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">隐藏密码</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">解锁以查看您保存的登录信息</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">解锁以查看保存的密码</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">保护您的登录名和密码</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">保护您保存的密码</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">设置设备锁定图案、PIN 或密码以保护您保存的登录名与密码,避免他人盗用。</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">设置设备锁定图案、PIN 或密码以保护您保存的密码,避免他人盗用。</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">稍后</string>
@@ -1931,8 +1929,6 @@
<string name="saved_logins_sort_strategy_alphabetically">名称(A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">上次使用</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">排序登录信息菜单</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">密码排序菜单</string>
@@ -1942,41 +1938,27 @@
<string name="preferences_autofill">自动填充</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">地址</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">信用卡</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">付款方式</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">保存并自动填充信用卡信息</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">保存和填写付款方式</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">数据已加密</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s 会加密您保存的所有付款方式</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">跨设备同步信用卡信息</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">同步卡片信息</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">添加信用卡</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">添加信用卡</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">管理保存的卡片</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">管理信用卡</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">添加地址</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">管理地址</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">保存并自动填充地址</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">保存和填充地址</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">包含号码、邮箱和收货地址等信息</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">包括电话号码和邮箱地址</string>
@@ -2000,8 +1982,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">删除卡片</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">您确定要删除此信用卡吗?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">确定删除信用卡吗?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">删除</string>
@@ -2015,25 +1995,16 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">保存的卡片</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">请输入有效的信用卡卡号</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">请输入有效卡号</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">请填写此栏</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">请输入持卡人姓名</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">解锁后即可查看保存的卡片信息</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">保护您的卡片信息</string>
<!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">保护您保存的付款方式</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">设置设备锁定图案、PIN 或密码以保护您保存的卡片信息,避免他人盗用。</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">设置设备锁定图案、PIN 或密码以保护您保存的付款方式,避免他人盗用。</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">立即设置</string>
@@ -2042,9 +2013,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">解锁设备</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">解锁以使用存储的卡片信息</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">解锁以使用保存的付款方式</string>
<!-- Title of the "Add address" screen -->
@@ -2053,12 +2021,6 @@
<string name="addresses_edit_address">编辑地址</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">管理地址</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">名</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">中间名</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">姓</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">姓名</string>
<!-- The header for the street address of an address -->
@@ -2085,8 +2047,6 @@
<string name="addressess_delete_address_button">删除地址</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">您确定要删除此地址吗?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">确定删除此地址吗?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">删除</string>
@@ -2184,49 +2144,29 @@
<string name="login_menu_delete_button">删除</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">编辑</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">您确定要删除此登录信息吗?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">您确定要删除此密码吗?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">删除</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">取消</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">登录选项</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">密码选项</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">登录信息中的网址输入框。</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">网址输入框。</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">登录信息中的用户名输入框。</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">用户名输入框。</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">登录信息中的密码输入框。</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">密码输入框。</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">保存编辑过的登录信息。</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">保存更改。</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">编辑</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">编辑密码</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">新建登录信息</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">添加密码</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">需要密码</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">请输入密码</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">用户名不能为空</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">请输入用户名</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">主机名不能为空</string>
@@ -2643,6 +2583,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">关闭翻译表单</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">部分设置暂时无法使用。</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">翻译</string>
@@ -2665,6 +2608,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">请选择语言来管理“总是翻译”和“永不翻译”首选项。</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">无法加载语言包,请稍后再试。</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">询问是否翻译(默认)</string>
@@ -2688,6 +2634,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">移除 %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">无法加载网站,请稍后再试。</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">确定删除 %1$s 吗?</string>
@@ -2765,13 +2713,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">向前导航</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">打开调试抽屉</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">标签页工具</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">标签页数量</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">活跃</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">活跃</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">活跃</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">休眠</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2782,6 +2735,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">标签页创建工具</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">要创建的标签页数量</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">文本框为空</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">只能输入正整数</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">只能输入大于 0 的数字</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">超出单次操作所能生成的标签页数量上限(%1$s 个)</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">添加到活跃标签页</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2798,11 +2761,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">隐私声明</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">提交</string>
+ <string name="micro_survey_submit_button_label">提交</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">关闭</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">关闭</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">感谢反馈!</string>
+ <string name="micro_survey_feedback_confirmation">感谢反馈!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">非常满意</string>
<!-- Option for likert scale -->
@@ -2815,6 +2778,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">非常不满意</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">打开问卷</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">关闭问卷</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">关闭</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">登录信息</string>
diff --git a/mobile/android/fenix/app/src/main/res/values-zh-rTW/strings.xml b/mobile/android/fenix/app/src/main/res/values-zh-rTW/strings.xml
index fee537aaf9..1bec6b339b 100644
--- a/mobile/android/fenix/app/src/main/res/values-zh-rTW/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values-zh-rTW/strings.xml
@@ -202,6 +202,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">附加元件</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">擴充套件</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">管理擴充套件</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">探索更多擴充套件</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">帳號資訊</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -220,6 +224,8 @@
<string name="browser_menu_open_in_regular_tab">用一般分頁開啟</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">新增至裝置主畫面</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">新增至裝置主畫面…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">安裝</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
@@ -231,9 +237,13 @@
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">翻譯頁面</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">儲存至收藏集…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">儲存至收藏集</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">分享</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">分享…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">使用 %1$s 開啟</string>
@@ -289,6 +299,24 @@
bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
<string name="browser_menu_save">儲存</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">將此頁加入書籤</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">編輯書籤</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">儲存為 PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">開啟閱讀模式</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">關閉閱讀模式</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">翻譯此頁…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">已翻譯為%1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">列印…</string>
+
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
<string name="extensions_management_no_extensions">這裡沒有擴充套件</string>
@@ -386,8 +414,6 @@
<!-- Juno first user onboarding flow experiment, strings are marked unused as they are only referenced by Nimbus experiments. -->
<!-- Description for learning more about our privacy notice. -->
<string name="juno_onboarding_privacy_notice_text">Firefox 隱私權公告</string>
- <!-- Description for learning more about our privacy notice. -->
- <string name="juno_onboarding_privacy_notice_text_2" moz:removedIn="125" tools:ignore="UnusedResources">可以到我們的隱私權公告了解更多資訊</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments. -->
<string name="juno_onboarding_default_browser_title_nimbus_2">我們希望確保您上網安全</string>
<!-- Title for set firefox as default browser screen used by Nimbus experiments.
@@ -596,7 +622,9 @@
<!-- Preference for language -->
<string name="preferences_language">語言</string>
<!-- Preference for translation -->
- <string name="preferences_translation">翻譯</string>
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">翻譯</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">翻譯</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">回報資料</string>
<!-- Preference for data collection -->
@@ -671,10 +699,6 @@
<string name="addons_permissions_heading_required" tools:ignore="UnusedResources">必需</string>
<!-- The title of the optional permissions section from addon's permissions screen -->
<string name="addons_permissions_heading_optional" tools:ignore="UnusedResources">非必要</string>
- <!-- The title of the section with websites that have permissions granted from addon's permissions screen -->
- <string name="addons_permissions_heading_read_and_change_website_data" tools:ignore="UnusedResources">讀取或變更網站資料</string>
- <!-- The description of the icon that can delete one of the websites displayed -->
- <string name="addons_permissions_icon_description_delete_website" tools:ignore="UnusedResources">刪除網站</string>
<!-- The title of the origin permission option allowing a user to enable the extension to run on all sites -->
<string name="addons_permissions_allow_for_all_sites" tools:ignore="UnusedResources">允許所有網站</string>
<!-- The subtitle for the allow for all sites preference toggle -->
@@ -800,8 +824,6 @@
<string name="preferences_sync_history">瀏覽紀錄</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">書籤</string>
- <!-- Preference for syncing logins -->
- <string name="preferences_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">登入資訊</string>
<!-- Preference for syncing passwords -->
<string name="preferences_sync_logins_2">密碼</string>
<!-- Preference for syncing tabs -->
@@ -828,8 +850,6 @@
and the third is the device model. -->
<string name="default_device_name_2">在 %2$s %3$s 上的 %1$s</string>
- <!-- Preference for syncing credit cards -->
- <string name="preferences_sync_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">信用卡</string>
<!-- Preference for syncing payment methods -->
<string name="preferences_sync_credit_cards_2">付款方式</string>
<!-- Preference for syncing addresses -->
@@ -846,6 +866,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">來自 %s 的分頁</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">已關閉 %1$s 分頁:%2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">檢視最近關閉的分頁</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">例外網站</string>
@@ -1798,12 +1826,8 @@
<string name="add_to_homescreen_description_2">您可將此網站加到裝置主畫面,方便快速開啟,或是以類似 App 的方式使用。</string>
<!-- Preference for managing the settings for logins and passwords in Fenix -->
- <string name="preferences_passwords_logins_and_passwords" moz:RemovedIn="125" tools:ignore="UnusedResources">登入資訊與密碼</string>
- <!-- Preference for managing the settings for logins and passwords in Fenix -->
<string name="preferences_passwords_logins_and_passwords_2">密碼</string>
<!-- Preference for managing the saving of logins and passwords in Fenix -->
- <string name="preferences_passwords_save_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">儲存登入資訊與密碼</string>
- <!-- Preference for managing the saving of logins and passwords in Fenix -->
<string name="preferences_passwords_save_logins_2">已存密碼</string>
<!-- Preference option for asking to save passwords in Fenix -->
<string name="preferences_passwords_save_logins_ask_to_save">詢問我是否儲存</string>
@@ -1818,46 +1842,27 @@
<!-- Description for the preference for autofilling logins from Fenix in other apps (e.g. autofilling the Twitter app) -->
<string name="preferences_android_autofill_description">使用其他裝置中的其他應用程式時也自動填寫使用者名稱與密碼。</string>
- <!-- Preference option for adding a login -->
- <string name="preferences_logins_add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">新增登入資訊</string>
-
<!-- Preference option for adding a password -->
<string name="preferences_logins_add_login_2">新增密碼</string>
<!-- Preference for syncing saved passwords in Fenix -->
- <string name="preferences_passwords_sync_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">同步登入資訊</string>
- <!-- Preference for syncing saved passwords in Fenix -->
<string name="preferences_passwords_sync_logins_2">同步密碼</string>
- <!-- Preference for syncing saved logins in Fenix, when not signed in-->
- <string name="preferences_passwords_sync_logins_across_devices" moz:RemovedIn="125" tools:ignore="UnusedResources">在不同裝置間同步登入資訊</string>
<!-- Preference for syncing saved passwords in Fenix, when not signed in-->
<string name="preferences_passwords_sync_logins_across_devices_2">在不同裝置間同步密碼</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins" moz:RemovedIn="125" tools:ignore="UnusedResources">儲存的登入資訊</string>
<!-- Preference to access list of saved passwords -->
<string name="preferences_passwords_saved_logins_2">已存密碼</string>
<!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
- <string name="preferences_passwords_saved_logins_description_empty_text" moz:RemovedIn="125" tools:ignore="UnusedResources">您儲存或同步到 %s 的登入資訊將顯示於此處。</string>
- <!-- Description of empty list of saved passwords. Placeholder is replaced with app name. -->
<string name="preferences_passwords_saved_logins_description_empty_text_2">您儲存或同步到 %s 的密碼將顯示於此處,所有儲存的密碼資訊都會被加密。</string>
- <!-- Preference to access list of saved logins -->
- <string name="preferences_passwords_saved_logins_description_empty_learn_more_link" moz:RemovedIn="125" tools:ignore="UnusedResources">了解 Sync 的更多資訊。</string>
<!-- Clickable text for opening an external link for more information about Sync. -->
<string name="preferences_passwords_saved_logins_description_empty_learn_more_link_2">瞭解同步功能的更多資訊</string>
<!-- Preference to access list of login exceptions that we never save logins for -->
<string name="preferences_passwords_exceptions">例外網站</string>
- <!-- Empty description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description_empty" moz:RemovedIn="125" tools:ignore="UnusedResources">不儲存登入資訊與密碼的網站將顯示於此處。</string>
<!-- Empty description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_empty_2">%s 不會儲存下列網站的密碼。</string>
- <!-- Description of list of login exceptions that we never save logins for -->
- <string name="preferences_passwords_exceptions_description" moz:RemovedIn="125" tools:ignore="UnusedResources">將不儲存這些網站的登入資訊與密碼。</string>
<!-- Description of list of login exceptions that we never save passwords for. Parameter will be replaced by app name. -->
<string name="preferences_passwords_exceptions_description_2">%s 不會儲存下列網站的密碼。</string>
<!-- Text on button to remove all saved login exceptions -->
<string name="preferences_passwords_exceptions_remove_all">刪除所有例外</string>
- <!-- Hint for search box in logins list -->
- <string name="preferences_passwords_saved_logins_search" moz:RemovedIn="125" tools:ignore="UnusedResources">搜尋登入資訊</string>
<!-- Hint for search box in passwords list -->
<string name="preferences_passwords_saved_logins_search_2">搜尋密碼</string>
<!-- The header for the site that a login is for -->
@@ -1886,17 +1891,11 @@
<string name="saved_login_reveal_password">顯示密碼</string>
<!-- Content Description (for screenreaders etc) read for the button to hide a password in logins -->
<string name="saved_login_hide_password">隱藏密碼</string>
- <!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their logins -->
- <string name="logins_biometric_prompt_message" moz:RemovedIn="125" tools:ignore="UnusedResources">解鎖後即可檢視儲存的登入資訊</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their passwords -->
<string name="logins_biometric_prompt_message_2">解鎖後即可檢視儲存的密碼</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">保護您的登入資訊與密碼</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_title_2">保護您儲存的密碼</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="logins_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">設定裝置解鎖圖形、PIN 碼或密碼來保護您儲存下來的登入資訊與密碼,避免別人盜用。</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_message_2">設定裝置解鎖圖形、PIN 碼或密碼來保護您儲存的密碼,避免別人盜用。</string>
<!-- Negative button to ignore warning dialog if users have no device authentication set up -->
<string name="logins_warning_dialog_later">稍後處理</string>
@@ -1913,8 +1912,6 @@
<string name="saved_logins_sort_strategy_alphabetically">名稱(A-Z 排序)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">上次使用</string>
- <!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
- <string name="saved_logins_menu_dropdown_chevron_icon_content_description" moz:RemovedIn="125" tools:ignore="UnusedResources">排序登入資訊選單</string>
<!-- Content description (not visible, for screen readers etc.) -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description_2">排序密碼選單</string>
@@ -1924,42 +1921,28 @@
<string name="preferences_autofill">自動填寫</string>
<!-- Preference and title for managing the settings for addresses -->
<string name="preferences_addresses">地址</string>
- <!-- Preference and title for managing the settings for credit cards -->
- <string name="preferences_credit_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">信用卡</string>
<!-- Preference and title for managing the settings for payment methods -->
<string name="preferences_credit_cards_2">付款方式</string>
<!-- Preference for saving and autofilling credit cards -->
- <string name="preferences_credit_cards_save_and_autofill_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">儲存並自動填寫卡片</string>
- <!-- Preference for saving and autofilling credit cards -->
<string name="preferences_credit_cards_save_and_autofill_cards_2">儲存並自動填寫付款方式</string>
- <!-- Preference summary for saving and autofilling credit card data -->
- <string name="preferences_credit_cards_save_and_autofill_cards_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">資料有加密</string>
<!-- Preference summary for saving and autofilling payment method data. Parameter will be replaced by app name. -->
<string name="preferences_credit_cards_save_and_autofill_cards_summary_2">%s 會加密您儲存的所有付款方式資料</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is not signed into sync -->
<string name="preferences_credit_cards_sync_cards_across_devices">在不同裝置間同步卡片資料</string>
<!-- Preference option for syncing credit cards across devices. This is displayed when the user is signed into sync -->
<string name="preferences_credit_cards_sync_cards">同步信用卡資訊</string>
- <!-- Preference option for adding a credit card -->
- <string name="preferences_credit_cards_add_credit_card" moz:RemovedIn="125" tools:ignore="UnusedResources">新增信用卡</string>
<!-- Preference option for adding a card -->
<string name="preferences_credit_cards_add_credit_card_2">新增付款卡片</string>
- <!-- Preference option for managing saved credit cards -->
- <string name="preferences_credit_cards_manage_saved_cards" moz:RemovedIn="125" tools:ignore="UnusedResources">管理已儲存的卡片</string>
<!-- Preference option for managing saved cards -->
<string name="preferences_credit_cards_manage_saved_cards_2">管理卡片</string>
<!-- Preference option for adding an address -->
<string name="preferences_addresses_add_address">新增地址</string>
<!-- Preference option for managing saved addresses -->
<string name="preferences_addresses_manage_addresses">管理已存地址</string>
- <!-- Preference for saving and autofilling addresses -->
- <string name="preferences_addresses_save_and_autofill_addresses" moz:RemovedIn="125" tools:ignore="UnusedResources">儲存並自動填寫地址</string>
<!-- Preference for saving and filling addresses -->
<string name="preferences_addresses_save_and_autofill_addresses_2">儲存並自動填寫地址</string>
- <!-- Preference summary for saving and autofilling address data -->
- <string name="preferences_addresses_save_and_autofill_addresses_summary" moz:RemovedIn="125" tools:ignore="UnusedResources">包含電話號碼、E-Mail、收件地址等資訊</string>
<!-- Preference summary for saving and filling address data -->
<string name="preferences_addresses_save_and_autofill_addresses_summary_2">包含電話號碼與電子郵件地址</string>
@@ -1983,8 +1966,6 @@
<!-- The text for the "Delete card" button for deleting a credit card -->
<string name="credit_cards_delete_card_button">刪除卡片</string>
<!-- The text for the confirmation message of "Delete card" dialog -->
- <string name="credit_cards_delete_dialog_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">你確定要刪除這張信用卡嗎?</string>
- <!-- The text for the confirmation message of "Delete card" dialog -->
<string name="credit_cards_delete_dialog_confirmation_2">要刪除卡片嗎?</string>
<!-- The text for the positive button on "Delete card" dialog -->
<string name="credit_cards_delete_dialog_button">刪除</string>
@@ -1998,24 +1979,15 @@
<!-- Title of the "Saved cards" screen -->
<string name="credit_cards_saved_cards">已儲存的卡片</string>
- <!-- Error message for credit card number validation -->
- <string name="credit_cards_number_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">請輸入有效的信用卡號</string>
-
<!-- Error message for card number validation -->
<string name="credit_cards_number_validation_error_message_2">請輸入有效卡號</string>
- <!-- Error message for credit card name on card validation -->
- <string name="credit_cards_name_on_card_validation_error_message" moz:RemovedIn="125" tools:ignore="UnusedResources">請填寫此欄位</string>
<!-- Error message for card name on card validation -->
<string name="credit_cards_name_on_card_validation_error_message_2">請輸入持卡人姓名</string>
<!-- Message displayed in biometric prompt displayed for authentication before allowing users to view their saved credit cards -->
<string name="credit_cards_biometric_prompt_message">解鎖後即可檢視儲存的卡片資訊</string>
<!-- Title of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_title" moz:RemovedIn="125" tools:ignore="UnusedResources">保護您的信用卡資訊</string>
- <!-- Title of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_title_2">保護您儲存的付款方式</string>
<!-- Message of warning dialog if users have no device authentication set up -->
- <string name="credit_cards_warning_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">設定裝置解鎖圖形、PIN 碼或密碼來保護您儲存的信用卡資訊,避免別人盜用。</string>
- <!-- Message of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_message_3">設定裝置解鎖圖形、PIN 碼或密碼來保護您儲存的付款方式資訊,避免別人盜用。</string>
<!-- Positive button to send users to set up a pin of warning dialog if users have no device authentication set up -->
<string name="credit_cards_warning_dialog_set_up_now">立即設定</string>
@@ -2024,9 +1996,6 @@
<!-- Title of PIN verification dialog to direct users to re-enter their device credentials to access their credit cards -->
<string name="credit_cards_biometric_prompt_message_pin">裝置解鎖</string>
- <!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored credit card information -->
- <string name="credit_cards_biometric_prompt_unlock_message" moz:RemovedIn="125" tools:ignore="UnusedResources">解鎖後,即可使用儲存的信用卡資訊</string>
-
<!-- Message displayed in biometric prompt for authentication, before allowing users to use their stored payment method information -->
<string name="credit_cards_biometric_prompt_unlock_message_2">解鎖後即可使用儲存的付款方式</string>
<!-- Title of the "Add address" screen -->
@@ -2035,12 +2004,6 @@
<string name="addresses_edit_address">編輯地址</string>
<!-- Title of the "Manage addresses" screen -->
<string name="addresses_manage_addresses">管理已存地址</string>
- <!-- The header for the first name of an address -->
- <string name="addresses_first_name" moz:removedIn="125" tools:ignore="UnusedResources">名字</string>
- <!-- The header for the middle name of an address -->
- <string name="addresses_middle_name" moz:removedIn="125" tools:ignore="UnusedResources">中間名</string>
- <!-- The header for the last name of an address -->
- <string name="addresses_last_name" moz:removedIn="125" tools:ignore="UnusedResources">姓氏</string>
<!-- The header for the name of an address. Name represents a person's full name, typically made up of a first, middle and last name, e.g. John Joe Doe. -->
<string name="addresses_name">姓名</string>
<!-- The header for the street address of an address -->
@@ -2067,8 +2030,6 @@
<string name="addressess_delete_address_button">刪除地址</string>
<!-- The title for the "Delete address" confirmation dialog -->
- <string name="addressess_confirm_dialog_message" moz:RemovedIn="125" tools:ignore="UnusedResources">您確定要刪除這筆地址嗎?</string>
- <!-- The title for the "Delete address" confirmation dialog -->
<string name="addressess_confirm_dialog_message_2">要刪除這個地址嗎?</string>
<!-- The text for the positive button on "Delete address" dialog -->
<string name="addressess_confirm_dialog_ok_button">刪除</string>
@@ -2166,49 +2127,29 @@
<string name="login_menu_delete_button">刪除</string>
<!-- Login overflow menu edit button -->
<string name="login_menu_edit_button">編輯</string>
- <!-- Message in delete confirmation dialog for logins -->
- <string name="login_deletion_confirmation" moz:RemovedIn="125" tools:ignore="UnusedResources">您確定要刪除這筆登入資訊嗎?</string>
<!-- Message in delete confirmation dialog for password -->
<string name="login_deletion_confirmation_2">你確定要刪除這筆密碼嗎?</string>
<!-- Positive action of a dialog asking to delete -->
<string name="dialog_delete_positive">刪除</string>
<!-- Negative action of a dialog asking to delete login -->
<string name="dialog_delete_negative">取消</string>
- <!-- The saved login options menu description. -->
- <string name="login_options_menu" moz:RemovedIn="125" tools:ignore="UnusedResources">登入選項</string>
<!-- The saved password options menu description. -->
<string name="login_options_menu_2">密碼選項</string>
- <!-- The editable text field for a login's web address. -->
- <string name="saved_login_hostname_description" moz:RemovedIn="125" tools:ignore="UnusedResources">登入資訊當中,網址的輸入欄位。</string>
<!-- The editable text field for a website address. -->
<string name="saved_login_hostname_description_3">網址的輸入欄位。</string>
- <!-- The editable text field for a login's username. -->
- <string name="saved_login_username_description" moz:RemovedIn="125" tools:ignore="UnusedResources">登入資訊當中,使用者名稱的輸入欄位。</string>
<!-- The editable text field for a username. -->
<string name="saved_login_username_description_3">使用者名稱的輸入欄位。</string>
<!-- The editable text field for a login's password. -->
- <string name="saved_login_password_description" moz:RemovedIn="125" tools:ignore="UnusedResources">登入資訊當中,密碼的輸入欄位。</string>
- <!-- The editable text field for a login's password. -->
<string name="saved_login_password_description_2">密碼的輸入欄位。</string>
- <!-- The button description to save changes to an edited login. -->
- <string name="save_changes_to_login" moz:RemovedIn="125" tools:ignore="UnusedResources">儲存編輯過的登入資訊。</string>
<!-- The button description to save changes to an edited password. -->
<string name="save_changes_to_login_2">儲存變更。</string>
- <!-- The page title for editing a saved login. -->
- <string name="edit" moz:RemovedIn="125" tools:ignore="UnusedResources">編輯</string>
<!-- The page title for editing a saved password. -->
<string name="edit_2">編輯密碼</string>
- <!-- The page title for adding new login. -->
- <string name="add_login" moz:RemovedIn="125" tools:ignore="UnusedResources">新增登入資訊</string>
<!-- The page title for adding new password. -->
<string name="add_login_2">新增密碼</string>
- <!-- The error message in add/edit login view when password field is blank. -->
- <string name="saved_login_password_required" moz:RemovedIn="125" tools:ignore="UnusedResources">需要密碼</string>
<!-- Error text displayed underneath the password field when it is in an error case. -->
<string name="saved_login_password_required_2">輸入密碼</string>
<!-- The error message in add login view when username field is blank. -->
- <string name="saved_login_username_required" moz:RemovedIn="125" tools:ignore="UnusedResources">必須輸入使用者名稱</string>
- <!-- The error message in add login view when username field is blank. -->
<string name="saved_login_username_required_2">輸入使用者名稱</string>
<!-- The error message in add login view when hostname field is blank. -->
<string name="saved_login_hostname_required" tools:ignore="UnusedResources">必須輸入主機名稱</string>
@@ -2424,7 +2365,7 @@
<!-- Title for info card displayed after the user reports a product is back in stock. -->
<string name="review_quality_check_analysis_requested_info_title">感謝您回報!</string>
<!-- Text for body of info card displayed after the user reports a product is back in stock. -->
- <string name="review_quality_check_analysis_requested_info_body">我們將在 24 小時內提供更新過的評論分析資訊,請稍候再回來。</string>
+ <string name="review_quality_check_analysis_requested_info_body">我們將在 24 小時內提供更新過的評論分析資訊,請稍後再回來。</string>
<!-- Title for info card displayed when the user review checker while on a product that Fakespot does not analyze (e.g. gift cards, music). -->
<string name="review_quality_check_not_analyzable_info_title">我們無法檢查這些評論</string>
<!-- Text for body of info card displayed when the user review checker while on a product that Fakespot does not analyze (e.g. gift cards, music). -->
@@ -2614,6 +2555,9 @@
<!-- Content description (not visible, for screen readers etc.) for closing the translations bottom sheet. -->
<string name="translation_option_bottom_sheet_close_content_description">關閉翻譯表單</string>
+ <!-- The title of the warning card informs the user that an error has occurred at page settings. -->
+ <string name="translation_option_bottom_sheet_error_warning_text">暫時無法使用某些設定。</string>
+
<!-- Translation settings dialog -->
<!-- Title of the translation settings dialog that allows a user to set their preferred translation settings. -->
<string name="translation_settings_toolbar_title">翻譯</string>
@@ -2636,6 +2580,9 @@
<!-- Screen header presenting the automatic translation preference feature. It will appear under the toolbar. -->
<string name="automatic_translation_header_preference">請選擇一種語言,來管理該語言的「總是翻譯」與「永不翻譯」偏好設定。</string>
+ <!-- The title of the warning card informs the user that the system could not load languages for translation settings. -->
+ <string name="automatic_translation_error_warning_text">無法載入語言,請稍後再回來。</string>
+
<!-- Automatic translation options preference screen -->
<!-- Preference option for offering to translate. Radio button title text.-->
<string name="automatic_translation_option_offer_to_translate_title_preference">提供翻譯(預設)</string>
@@ -2659,6 +2606,8 @@
<!-- Content description (not visible, for screen readers etc.): For a never-translated site list item that is selected.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_item_list_content_description_preference">移除 %1$s</string>
+ <!-- The title of the warning card informs the user that an error has occurred at the never translate sites list. -->
+ <string name="never_translate_site_error_warning_text">無法載入網站清單,請稍後再回來。</string>
<!-- The Delete site dialogue title will appear when the user clicks on a list item.
The first parameter is web site url (for example:"wikipedia.com") -->
<string name="never_translate_site_dialog_title_preference">要刪除 %1$s 嗎?</string>
@@ -2736,13 +2685,18 @@
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">瀏覽上一頁</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">開啟除錯抽屜</string>
+
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
<string name="debug_drawer_tab_tools_title">分頁工具</string>
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">分頁數量</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">使用中</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127" tools:ignore="UnusedResources">使用中</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">使用中</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">未使用</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2753,6 +2707,16 @@
<string name="debug_drawer_tab_tools_tab_creation_tool_title">分頁產生工具</string>
<!-- The label of the text field in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_text_field_label">要產生的分頁數量</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is empty -->
+ <string name="debug_drawer_tab_tools_tab_quantity_empty_error">文字欄位空白</string>
+ <!-- The error message of the text field in the tab creation tool when the text field has characters other than digits -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_digits_error">僅可輸入正整數</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a zero -->
+ <string name="debug_drawer_tab_tools_tab_quantity_non_zero_error">僅可輸入大於 0 的數字</string>
+ <!-- The error message of the text field in the tab creation tool when the text field is a
+ quantity greater than the max tabs. The first parameter is the maximum number of tabs
+ that can be generated in one operation.-->
+ <string name="debug_drawer_tab_tools_tab_quantity_exceed_max_error">超過單一操作中可產生的最大分頁數量(%1$s)</string>
<!-- The button text to add tabs to the active tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_active">新增至使用中的分頁</string>
<!-- The button text to add tabs to the inactive tab group in the tab creation tool. -->
@@ -2769,11 +2733,11 @@
<!-- The privacy notice link -->
<string name="micro_survey_privacy_notice">隱私權公告</string>
<!-- The submit button label text -->
- <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">送出</string>
+ <string name="micro_survey_submit_button_label">送出</string>
<!-- The close button label text -->
- <string name="micro_survey_close_button_label">關閉</string>
+ <string name="micro_survey_close_button_label" tools:ignore="UnusedResources">關閉</string>
<!-- The survey completion confirmation text -->
- <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">感謝您的意見回饋!</string>
+ <string name="micro_survey_feedback_confirmation">感謝您的意見回饋!</string>
<!-- Option for likert scale -->
<string name="likert_scale_option_1" tools:ignore="UnusedResources">非常滿意</string>
<!-- Option for likert scale -->
@@ -2785,6 +2749,14 @@
<!-- Option for likert scale -->
<string name="likert_scale_option_5" tools:ignore="UnusedResources">非常不滿意</string>
+ <!-- Microsurvey accessibility -->
+ <!-- Content description (not visible, for screen readers etc.) for opening microsurvey bottom sheet. -->
+ <string name="microsurvey_open_handle_content_description" tools:ignore="UnusedResources">開啟問卷</string>
+ <!-- Content description (not visible, for screen readers etc.) for closing microsurvey bottom sheet. -->
+ <string name="microsurvey_close_handle_content_description" tools:ignore="UnusedResources">關閉問卷</string>
+ <!-- Content description for "X" button that is closing microsurvey. -->
+ <string name="microsurvey_close_button_content_description" tools:ignore="UnusedResources">關閉</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">登入資訊</string>
diff --git a/mobile/android/fenix/app/src/main/res/values/attrs.xml b/mobile/android/fenix/app/src/main/res/values/attrs.xml
index edd57c6d88..fef61285a5 100644
--- a/mobile/android/fenix/app/src/main/res/values/attrs.xml
+++ b/mobile/android/fenix/app/src/main/res/values/attrs.xml
@@ -29,7 +29,7 @@
<!-- Disabled text -->
<attr name="textDisabled" format="reference" />
<!-- Warning text -->
- <attr name="textWarning" format="reference"/>
+ <attr name="textCritical" format="reference"/>
<!-- Small heading, Text link -->
<attr name="textAccent" format="reference" />
<!-- Text Inverted/On Color -->
diff --git a/mobile/android/fenix/app/src/main/res/values/colors.xml b/mobile/android/fenix/app/src/main/res/values/colors.xml
index 9abba577a2..d5d58df47e 100644
--- a/mobile/android/fenix/app/src/main/res/values/colors.xml
+++ b/mobile/android/fenix/app/src/main/res/values/colors.xml
@@ -27,11 +27,11 @@
<!-- Warning background -->
<color name="fx_mobile_layer_color_warning" tools:ignore="UnusedResources">@color/photonYellow20</color>
<!-- Confirmation background -->
- <color name="fx_mobile_layer_color_confirmation" tools:ignore="UnusedResources">@color/photonGreen20</color>
+ <color name="fx_mobile_layer_color_success" tools:ignore="UnusedResources">@color/photonGreen20</color>
<!-- Error background -->
- <color name="fx_mobile_layer_color_error" tools:ignore="UnusedResources">@color/photonRed10</color>
+ <color name="fx_mobile_layer_color_critical" tools:ignore="UnusedResources">@color/photonRed10</color>
<!-- Info background -->
- <color name="fx_mobile_layer_color_info" tools:ignore="UnusedResources">@color/photonBlue50A44</color>
+ <color name="fx_mobile_layer_color_information" tools:ignore="UnusedResources">@color/photonBlue50A44</color>
<!-- Action -->
<!-- Primary button, Snackbar, Floating action button, Chip selected -->
@@ -47,11 +47,11 @@
<!-- Warning button -->
<color name="fx_mobile_action_color_warning" tools:ignore="UnusedResources">@color/photonYellow60A40</color>
<!-- Confirmation button -->
- <color name="fx_mobile_action_color_confirmation" tools:ignore="UnusedResources">@color/photonGreen60</color>
+ <color name="fx_mobile_action_color_success" tools:ignore="UnusedResources">@color/photonGreen60</color>
<!-- Error button -->
- <color name="fx_mobile_action_color_error" tools:ignore="UnusedResources">@color/photonRed30</color>
+ <color name="fx_mobile_action_color_critical" tools:ignore="UnusedResources">@color/photonRed30</color>
<!-- Info button -->
- <color name="fx_mobile_action_color_info" tools:ignore="UnusedResources">@color/photonBlue50</color>
+ <color name="fx_mobile_action_color_information" tools:ignore="UnusedResources">@color/photonBlue50</color>
<!-- Checkbox default, Radio button default -->
<color name="fx_mobile_action_color_form_default" tools:ignore="UnusedResources">@color/photonDarkGrey90</color>
<!-- Checkbox selected, Radio button selected -->
@@ -77,9 +77,9 @@
<!-- Disabled text -->
<color name="fx_mobile_text_color_disabled">@color/photonDarkGrey90A40</color>
<!-- Warning text -->
- <color name="fx_mobile_text_color_warning">@color/photonRed70</color>
+ <color name="fx_mobile_text_color_critical">@color/photonRed70</color>
<!-- Warning text on Secondary button -->
- <color name="fx_mobile_text_color_warning_button">@color/photonRed70</color>
+ <color name="fx_mobile_text_color_critical_button">@color/photonRed70</color>
<!-- Small heading, Text link -->
<color name="fx_mobile_text_color_accent">@color/photonViolet70</color>
<!-- Small heading, Text link -->
@@ -116,10 +116,10 @@
<color name="fx_mobile_icon_color_information">@color/photonBlue30</color>
<!-- Icon button -->
<color name="fx_mobile_icon_color_button" tools:ignore="UnusedResources">@color/photonInk20</color>
- <color name="fx_mobile_icon_color_warning" tools:ignore="UnusedResources">@color/photonRed70</color>
+ <color name="fx_mobile_icon_color_critical" tools:ignore="UnusedResources">@color/photonRed70</color>
<!-- Warning icon on Secondary button -->
- <color name="fx_mobile_icon_color_warning_button">@color/photonRed70</color>
- <color name="fx_mobile_icon_color_accent_violet">@color/photonViolet60</color>
+ <color name="fx_mobile_icon_color_critical_button">@color/photonRed70</color>
+ <color name="fx_mobile_icon_color_accent_violet">@color/photonViolet70</color>
<color name="fx_mobile_icon_color_accent_blue">@color/photonBlue60</color>
<color name="fx_mobile_icon_color_accent_pink">@color/photonPink60</color>
<color name="fx_mobile_icon_color_accent_green">@color/photonGreen60</color>
@@ -150,15 +150,15 @@
<!-- Form parts -->
<color name="fx_mobile_border_color_disabled" tools:ignore="UnusedResources">@color/photonDarkGrey90A40</color>
<!-- Form parts -->
- <color name="fx_mobile_border_color_warning" tools:ignore="UnusedResources">@color/photonRed70</color>
+ <color name="fx_mobile_border_color_critical" tools:ignore="UnusedResources">@color/photonRed70</color>
<!-- Private theme color variables -->
<!-- Layers -->
<!-- Default Screen background, Frontlayer background, App Bar Top, App Bar Bottom, Frontlayer header -->
- <color name="fx_mobile_private_layer_color_1">@color/photonInk50</color>
+ <color name="fx_mobile_private_layer_color_1">@color/photonViolet90</color>
<!-- Card background, Menu background, Dialog, Banner -->
- <color name="fx_mobile_private_layer_color_2">@color/photonInk50</color>
+ <color name="fx_mobile_private_layer_color_2">@color/photonViolet90</color>
<!-- Search -->
<color name="fx_mobile_private_layer_color_3">@color/photonInk90</color>
<color name="fx_mobile_private_layer_color_search">@color/photonInk90</color>
@@ -184,7 +184,7 @@
<!-- Primary button, Snackbar, Floating action button, Chip selected -->
<color name="fx_mobile_private_action_color_primary">@color/photonViolet60</color>
<!-- Secondary button -->
- <color name="fx_mobile_private_action_color_secondary" tools:ignore="UnusedResources">@color/photonLightGrey30</color>
+ <color name="fx_mobile_private_action_color_secondary" tools:ignore="UnusedResources">@color/photonDarkGrey05</color>
<!-- Filter -->
<color name="fx_mobile_private_action_color_tertiary" tools:ignore="UnusedResources">@color/photonDarkGrey10</color>
<!-- Chip -->
@@ -214,9 +214,9 @@
<!-- Disabled text -->
<color name="fx_mobile_private_text_color_disabled">@color/photonLightGrey05A40</color>
<!-- Warning text -->
- <color name="fx_mobile_private_text_color_warning">@color/photonRed20</color>
+ <color name="fx_mobile_private_text_color_critical">@color/photonRed20</color>
<!-- Warning text on Secondary button -->
- <color name="fx_mobile_private_text_color_warning_button" tools:ignore="UnusedResources">@color/photonRed70</color>
+ <color name="fx_mobile_private_text_color_critical_button" tools:ignore="UnusedResources">@color/photonRed20</color>
<!-- Small heading, Text link -->
<color name="fx_mobile_private_text_color_accent">@color/photonViolet20</color>
<!-- Small heading, Text link -->
@@ -228,7 +228,7 @@
<!-- Action Primary text -->
<color name="fx_mobile_private_text_color_action_primary">@color/photonLightGrey05</color>
<!-- Action Secondary text -->
- <color name="fx_mobile_private_text_color_action_secondary" tools:ignore="UnusedResources">@color/photonDarkGrey90</color>
+ <color name="fx_mobile_private_text_color_action_secondary" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Action Tertiary text -->
<color name="fx_mobile_private_text_color_action_tertiary" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Action Tertiary Active text -->
@@ -251,9 +251,9 @@
<color name="fx_mobile_private_icon_color_information" tools:ignore="UnusedResources">@color/photonBlue30</color>
<!-- Icon button -->
<color name="fx_mobile_private_icon_color_button" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
- <color name="fx_mobile_private_icon_color_warning" tools:ignore="UnusedResources">@color/photonRed20</color>
+ <color name="fx_mobile_private_icon_color_critical" tools:ignore="UnusedResources">@color/photonRed20</color>
<!-- Warning icon on Secondary button -->
- <color name="fx_mobile_private_icon_color_warning_button" tools:ignore="UnusedResources">@color/photonRed70</color>
+ <color name="fx_mobile_private_icon_color_critical_button" tools:ignore="UnusedResources">@color/photonRed20</color>
<color name="fx_mobile_private_icon_color_accent_violet" tools:ignore="UnusedResources">@color/photonViolet20</color>
<color name="fx_mobile_private_icon_color_accent_blue" tools:ignore="UnusedResources">@color/photonBlue20</color>
<color name="fx_mobile_private_icon_color_accent_pink" tools:ignore="UnusedResources">@color/photonPink20</color>
@@ -262,7 +262,7 @@
<!-- Action Primary Icon -->
<color name="fx_mobile_private_icon_color_action_primary" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Action Secondary Icon -->
- <color name="fx_mobile_private_icon_color_action_secondary" tools:ignore="UnusedResources">@color/photonDarkGrey90</color>
+ <color name="fx_mobile_private_icon_color_action_secondary" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Action Tertiary Icon -->
<color name="fx_mobile_private_icon_color_action_tertiary" tools:ignore="UnusedResources">@color/photonLightGrey05</color>
<!-- Reader, ETP Shield -->
@@ -272,7 +272,7 @@
<!-- Border -->
<!-- Default, Divider, Dotted -->
- <color name="fx_mobile_private_border_color_primary">@color/photonDarkGrey05</color>
+ <color name="fx_mobile_private_border_color_primary">@color/photonInk05</color>
<color name="fx_mobile_private_border_color_secondary">@color/photonInk10</color>
<!-- Onboarding -->
<color name="fx_mobile_private_border_color_inverted" tools:ignore="UnusedResources">@color/photonLightGrey30</color>
@@ -283,7 +283,7 @@
<!-- Form parts -->
<color name="fx_mobile_private_border_color_disabled" tools:ignore="UnusedResources">@color/photonLightGrey05A40</color>
<!-- Form parts -->
- <color name="fx_mobile_private_border_color_warning" tools:ignore="UnusedResources">@color/photonRed40</color>
+ <color name="fx_mobile_private_border_color_critical" tools:ignore="UnusedResources">@color/photonRed20</color>
<!-- Toolbar divider -->
<color name="fx_mobile_private_border_color_toolbar_divider">@color/photonViolet80</color>
diff --git a/mobile/android/fenix/app/src/main/res/values/preference_keys.xml b/mobile/android/fenix/app/src/main/res/values/preference_keys.xml
index 8e94d3251f..678602bd9b 100644
--- a/mobile/android/fenix/app/src/main/res/values/preference_keys.xml
+++ b/mobile/android/fenix/app/src/main/res/values/preference_keys.xml
@@ -17,6 +17,7 @@
<string name="pref_key_accessibility_force_enable_zoom" translatable="false">pref_key_accessibility_force_enable_zoom</string>
<string name="pref_key_advanced" translatable="false">pref_key_advanced</string>
<string name="pref_key_language" translatable="false">pref_key_language</string>
+ <string name="pref_key_translation" translatable="false">pref_key_translation</string>
<string name="pref_key_data_choices" translatable="false">pref_key_data_choices</string>
<string name="pref_key_delete_browsing_data" translatable="false">pref_key_delete_browsing_data</string>
<string name="pref_key_delete_browsing_data_on_quit_preference" translatable="false">pref_key_delete_browsing_data_on_quit_preference</string>
@@ -53,6 +54,9 @@
<string name="pref_key_override_sync_tokenserver" translatable="false">pref_key_override_sync_tokenserver</string>
<string name="pref_key_override_push_server" translatable="false">pref_key_override_push_server</string>
<string name="pref_key_sync_debug_quit" translatable="false">pref_key_sync_debug_quit</string>
+ <string name="pref_key_sync_debug_network_error" translatable="false">pref_key_sync_debug_network_error</string>
+ <string name="pref_key_sync_debug_temporary_auth_error" translatable="false">pref_key_sync_debug_temporary_auth_error</string>
+ <string name="pref_key_sync_debug_permanent_auth_error" translatable="false">pref_key_sync_debug_permanent_auth_error</string>
<string name="pref_key_customize" translatable="false">pref_key_customize</string>
<string name="pref_key_private_browsing" translatable="false">pref_key_private_browsing</string>
<string name="pref_key_leakcanary" translatable="false">pref_key_leakcanary</string>
@@ -164,7 +168,7 @@
<string name="pref_key_swipe_toolbar_switch_tabs" translatable="false">pref_key_swipe_toolbar_switch_tabs</string>
<string name="pref_key_swipe_toolbar_show_tabs" translatable="false">pref_key_swipe_toolbar_show_tabs</string>
<string name="pref_key_recent_tabs" translatable="false">pref_key_recent_tabs</string>
- <string name="pref_key_recent_bookmarks" translatable="false">pref_key_recent_bookmarks</string>
+ <string name="pref_key_customization_bookmarks" translatable="false">pref_key_recent_bookmarks</string>
<string name="pref_key_customization_category_toolbar" translatable="false">pref_key_customization_category_toolbar</string>
<!-- HTTPS Only Settings -->
diff --git a/mobile/android/fenix/app/src/main/res/values/static_strings.xml b/mobile/android/fenix/app/src/main/res/values/static_strings.xml
index 66ec907040..6ed8c8901c 100644
--- a/mobile/android/fenix/app/src/main/res/values/static_strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values/static_strings.xml
@@ -66,6 +66,12 @@
<string name="preferences_sync_debug_quit_button_title">Stop Firefox</string>
<!-- Quit app button summary for the Sync Debug preferences -->
<string name="preferences_sync_debug_quit_button_summary">Custom server changes will take effect on the next Firefox run.</string>
+ <!-- Button title for simulating an FxA network error inside the Sync Debug menu -->
+ <string name="preferences_sync_debug_network_error_button_title">Simulate account network error</string>
+ <!-- Button title for simulating an FxA temporary auth error inside the Sync Debug menu -->
+ <string name="preferences_sync_debug_temporary_auth_error_button_title">Simulate temporary account auth error</string>
+ <!-- Button title for simulating an FxA permanent auth error inside the Sync Debug menu -->
+ <string name="preferences_sync_debug_permanent_auth_error_button_title">Simulate permanent account auth error</string>
<!-- Label for enabling the Tabs Tray to Compose changes -->
<string name="preferences_debug_settings_tabs_tray_to_compose" translatable="false">Enable Tabs Tray to Compose rewrite</string>
<!-- Label for enabling the Compose Top Sites -->
diff --git a/mobile/android/fenix/app/src/main/res/values/strings.xml b/mobile/android/fenix/app/src/main/res/values/strings.xml
index a2a5d53866..9cfeb301e5 100644
--- a/mobile/android/fenix/app/src/main/res/values/strings.xml
+++ b/mobile/android/fenix/app/src/main/res/values/strings.xml
@@ -47,11 +47,19 @@
<!-- Home - Recently saved bookmarks -->
<!-- Title for the home screen section with recently saved bookmarks. -->
- <string name="recently_saved_title">Recently saved</string>
+ <string name="recently_saved_title" moz:removedIn="127" tools:ignore="UnusedResources">Recently saved</string>
<!-- Content description for the button which navigates the user to show all of their saved bookmarks. -->
- <string name="recently_saved_show_all_content_description_2">Show all saved bookmarks</string>
+ <string name="recently_saved_show_all_content_description_2" moz:removedIn="127" tools:ignore="UnusedResources">Show all saved bookmarks</string>
<!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
- <string name="recently_saved_menu_item_remove">Remove</string>
+ <string name="recently_saved_menu_item_remove" moz:removedIn="127" tools:ignore="UnusedResources">Remove</string>
+
+ <!-- Home - Bookmarks -->
+ <!-- Title for the home screen section with bookmarks. -->
+ <string name="home_bookmarks_title">Bookmarks</string>
+ <!-- Content description for the button which navigates the user to show all of their bookmarks. -->
+ <string name="home_bookmarks_show_all_content_description">Show all bookmarks</string>
+ <!-- Text for the menu button to remove a recently saved bookmark from the user's home screen -->
+ <string name="home_bookmarks_menu_item_remove">Remove</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s is produced by Mozilla.</string>
@@ -184,6 +192,10 @@
<string name="browser_menu_add_ons" moz:removedIn="126" tools:ignore="UnusedResources">Add-ons</string>
<!-- Browser menu button that opens the extensions manager -->
<string name="browser_menu_extensions">Extensions</string>
+ <!-- Browser menu button that opens the extensions manager -->
+ <string name="browser_menu_manage_extensions">Manage extensions</string>
+ <!-- Browser menu button that opens AMO in a tab -->
+ <string name="browser_menu_discover_more_extensions">Discover more extensions</string>
<!-- Browser menu button that opens account settings -->
<string name="browser_menu_account_settings">Account info</string>
<!-- Text displayed when there are no add-ons to be shown -->
@@ -202,18 +214,26 @@
<string name="browser_menu_open_in_regular_tab">Open in regular tab</string>
<!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
<string name="browser_menu_add_to_homescreen">Add to Home screen</string>
+ <!-- Browser menu toggle that adds a shortcut to the site on the device home screen. -->
+ <string name="browser_menu_add_to_homescreen_2">Add to Home screen…</string>
<!-- Browser menu toggle that installs a Progressive Web App shortcut to the site on the device home screen. -->
<string name="browser_menu_install_on_homescreen" moz:removedIn="126" tools:ignore="UnusedResources">Install</string>
<!-- Content description (not visible, for screen readers etc.) for the Resync tabs button -->
<string name="resync_button_content_description">Resync</string>
<!-- Browser menu button that opens the find in page menu -->
<string name="browser_menu_find_in_page">Find in page</string>
+ <!-- Browser menu button that opens the find in page menu -->
+ <string name="browser_menu_find_in_page_2">Find in page…</string>
<!-- Browser menu button that opens the translations dialog, which has options to translate the current browser page. -->
<string name="browser_menu_translations">Translate page</string>
<!-- Browser menu button that saves the current tab to a collection -->
+ <string name="browser_menu_save_to_collection">Save to collection…</string>
+ <!-- Browser menu button that saves the current tab to a collection -->
<string name="browser_menu_save_to_collection_2">Save to collection</string>
<!-- Browser menu button that open a share menu to share the current site -->
<string name="browser_menu_share">Share</string>
+ <!-- Browser menu button that open a share menu to share the current site -->
+ <string name="browser_menu_share_2">Share…</string>
<!-- Browser menu button shown in custom tabs that opens the current tab in Fenix
The first parameter is the name of the app defined in app_name (for example: Fenix) -->
<string name="browser_menu_open_in_fenix">Open in %1$s</string>
@@ -249,6 +269,33 @@
<string name="browser_menu_new_private_tab">New private tab</string>
<!-- Browser menu label that navigates to the Password screen -->
<string name="browser_menu_passwords">Passwords</string>
+ <!-- Browser menu label that navigates to the SUMO page for the Firefox for Android release notes.
+ The first parameter is the name of the app defined in app_name (for example: Fenix)-->
+ <string name="browser_menu_new_in_firefox">New in %1$s</string>
+ <!-- Browser menu label that toggles the request for the desktop site of the currently visited page -->
+ <string name="browser_menu_switch_to_desktop_site">Switch to desktop site</string>
+ <!-- Browser menu label that navigates to the page tools sub-menu -->
+ <string name="browser_menu_tools">Tools</string>
+ <!-- Browser menu label that navigates to the save sub-menu, which contains various save related menu items such as
+ bookmarking a page, saving to collection, shortcut or as a PDF, and adding to home screen -->
+ <string name="browser_menu_save">Save</string>
+ <!-- Browser menu label that bookmarks the currently visited page -->
+ <string name="browser_menu_bookmark_this_page">Bookmark this page</string>
+ <!-- Browser menu label that navigates to the edit bookmark screen for the current bookmarked page -->
+ <string name="browser_menu_edit_bookmark">Edit bookmark</string>
+ <!-- Browser menu label that the saves the currently visited page as a PDF -->
+ <string name="browser_menu_save_as_pdf">Save as PDF…</string>
+ <!-- Browser menu label for turning ON reader view of the current visited page -->
+ <string name="browser_menu_turn_on_reader_view">Turn on Reader View</string>
+ <!-- Browser menu label for turning OFF reader view of the current visited page -->
+ <string name="browser_menu_turn_off_reader_view">Turn off Reader View</string>
+ <!-- Browser menu label for navigating to the translation feature, which provides language translation options the current visited page -->
+ <string name="browser_menu_translate_page">Translate page…</string>
+ <!-- Browser menu label that is displayed when the current page has been translated by the translation feature.
+ The first parameter is the name of the language that page was translated to (e.g. English). -->
+ <string name="browser_menu_translated_to">Translated to %1$s</string>
+ <!-- Browser menu label for the print feature -->
+ <string name="browser_menu_print">Print…</string>
<!-- Extensions management fragment -->
<!-- Text displayed when there are no extensions to be shown -->
@@ -541,6 +588,10 @@
<string name="preferences_account_sync_error">Reconnect to resume syncing</string>
<!-- Preference for language -->
<string name="preferences_language">Language</string>
+ <!-- Preference for translation -->
+ <string name="preferences_translation" moz:removedIn="127" tools:ignore="UnusedResources">Translation</string>
+ <!-- Preference for translations -->
+ <string name="preferences_translations">Translations</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">Data choices</string>
<!-- Preference for data collection -->
@@ -641,7 +692,9 @@
<!-- Header text for jumping back into the recent tab in customize the home screen -->
<string name="customize_toggle_jump_back_in">Jump back in</string>
<!-- Title for the customize home screen section with recently saved bookmarks. -->
- <string name="customize_toggle_recent_bookmarks">Recent bookmarks</string>
+ <string name="customize_toggle_recent_bookmarks" moz:removedIn="127" tools:ignore="UnusedResources">Recent bookmarks</string>
+ <!-- Title for the customize home screen section with bookmarks. -->
+ <string name="customize_toggle_bookmarks">Bookmarks</string>
<!-- Title for the customize home screen section with recently visited. Recently visited is
a section where users see a list of tabs that they have visited in the past few days -->
<string name="customize_toggle_recently_visited">Recently visited</string>
@@ -774,6 +827,14 @@
<!-- %s is the device name -->
<string name="fxa_tab_received_from_notification_name">Tab from %s</string>
+ <!-- Close Synced Tabs -->
+ <!-- The title for a notification shown when the user closes tabs that are currently
+ open on this device from another device that's signed in to the same Mozilla account.
+ %1$s is a placeholder for the app name; %2$d is the number of tabs closed. -->
+ <string name="fxa_tabs_closed_notification_title">%1$s tabs closed: %2$d</string>
+ <!-- The body for a "closed synced tabs" notification. -->
+ <string name="fxa_tabs_closed_text">View recently closed tabs</string>
+
<!-- Advanced Preferences -->
<!-- Preference for tracking protection exceptions -->
<string name="preferences_tracking_protection_exceptions">Exceptions</string>
@@ -2403,6 +2464,8 @@
<string name="translations_bottom_sheet_negative_button">Not now</string>
<!-- Button text on the translations dialog to restore the translated website back to the original untranslated version. -->
<string name="translations_bottom_sheet_negative_button_restore">Show original</string>
+ <!-- Accessibility announcement (not visible, for screen readers etc.) for the translations dialog after restore button was pressed that indicates the original untranslated page was loaded. -->
+ <string name="translations_bottom_sheet_restore_accessibility_announcement">Original untranslated page loaded</string>
<!-- Button text on the translations dialog when a translation error appears, used to dismiss the dialog and return to the browser. -->
<string name="translations_bottom_sheet_negative_button_error">Done</string>
<!-- Button text on the translations dialog to begin a translation of the website. -->
@@ -2576,6 +2639,8 @@
<string name="debug_drawer_title">Debug Tools</string>
<!-- Content description (not visible, for screen readers etc.): Navigate back within the debug drawer. -->
<string name="debug_drawer_back_button_content_description">Navigate back</string>
+ <!-- Content description (not visible, for screen readers etc.): Open debug drawer. -->
+ <string name="debug_drawer_fab_content_description">Open debug drawer</string>
<!-- Debug drawer tabs tools -->
<!-- The title of the Tab Tools feature in the Debug Drawer. -->
@@ -2583,7 +2648,10 @@
<!-- The title of the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_title">Tab count</string>
<!-- The active tab count category in the tab count section in Tab Tools. -->
- <string name="debug_drawer_tab_tools_tab_count_normal">Active</string>
+ <string name="debug_drawer_tab_tools_tab_count_normal" moz:removedIn="127"
+ tools:ignore="UnusedResources">Active</string>
+ <!-- The active tab count category in the tab count section in Tab Tools. -->
+ <string name="debug_drawer_tab_tools_tab_count_active">Active</string>
<!-- The inactive tab count category in the tab count section in Tab Tools. -->
<string name="debug_drawer_tab_tools_tab_count_inactive">Inactive</string>
<!-- The private tab count category in the tab count section in Tab Tools. -->
@@ -2601,6 +2669,31 @@
<!-- The button text to add tabs to the private tab group in the tab creation tool. -->
<string name="debug_drawer_tab_tools_tab_creation_tool_button_text_private">Add to private tabs</string>
+ <!-- Micro survey -->
+
+ <!-- The continue button label -->
+ <string name="micro_survey_continue_button_label" tools:ignore="UnusedResources">Continue</string>
+ <!-- The survey header -->
+ <string name="micro_survey_survey_header">Complete this survey</string>
+ <!-- The privacy notice link -->
+ <string name="micro_survey_privacy_notice">Privacy Notice</string>
+ <!-- The submit button label text -->
+ <string name="micro_survey_submit_button_label" tools:ignore="UnusedResources">Submit</string>
+ <!-- The close button label text -->
+ <string name="micro_survey_close_button_label">Close</string>
+ <!-- The survey completion confirmation text -->
+ <string name="micro_survey_feedback_confirmation" tools:ignore="UnusedResources">Thanks for your feedback!</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_1" tools:ignore="UnusedResources">Very Satisfied</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_2" tools:ignore="UnusedResources">Satisfied</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_3" tools:ignore="UnusedResources">Neutral</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_4" tools:ignore="UnusedResources">Dissatisfied</string>
+ <!-- Option for likert scale -->
+ <string name="likert_scale_option_5" tools:ignore="UnusedResources">Very Dissatisfied</string>
+
<!-- Debug drawer logins -->
<!-- The title of the Logins feature in the Debug Drawer. -->
<string name="debug_drawer_logins_title">Logins</string>
diff --git a/mobile/android/fenix/app/src/main/res/values/styles.xml b/mobile/android/fenix/app/src/main/res/values/styles.xml
index c7a7932b8a..420511a5e2 100644
--- a/mobile/android/fenix/app/src/main/res/values/styles.xml
+++ b/mobile/android/fenix/app/src/main/res/values/styles.xml
@@ -34,9 +34,9 @@
<item name="android:textColorLink">@color/fx_mobile_text_color_accent</item>
<item name="mozacInputLayoutErrorTextColor"
- tools:ignore="UnusedResources">@color/fx_mobile_text_color_warning</item>
+ tools:ignore="UnusedResources">@color/fx_mobile_text_color_critical</item>
<item name="mozacInputLayoutErrorIconColor"
- tools:ignore="UnusedResources">@color/fx_mobile_text_color_warning</item>
+ tools:ignore="UnusedResources">@color/fx_mobile_text_color_critical</item>
<item name="mozacLoginSelectHeaderTextStyle" tools:ignore="UnusedResources">@style/SelectPromptHeaderTextStyle</item>
<item name="mozacSelectCreditCardHeaderTextStyle" tools:ignore="UnusedResources">@style/SelectPromptHeaderTextStyle</item>
<item name="mozacSelectAddressHeaderTextStyle" tools:ignore="UnusedResources">@style/SelectPromptHeaderTextStyle</item>
@@ -67,7 +67,7 @@
<!-- Disabled text -->
<item name="textDisabled">@color/fx_mobile_text_color_disabled</item>
<!-- Warning text -->
- <item name="textWarning">@color/fx_mobile_text_color_warning</item>
+ <item name="textCritical">@color/fx_mobile_text_color_critical</item>
<!-- Small heading, Text link -->
<item name="textAccent">@color/fx_mobile_text_color_accent</item>
<!-- Text Inverted/On Color -->
@@ -230,9 +230,9 @@
<item name="bottomSheetDialogTheme">@style/BottomSheetPrivate</item>
<item name="mozacInputLayoutErrorTextColor"
- tools:ignore="UnusedResources">@color/fx_mobile_private_text_color_warning</item>
+ tools:ignore="UnusedResources">@color/fx_mobile_private_text_color_critical</item>
<item name="mozacInputLayoutErrorIconColor"
- tools:ignore="UnusedResources">@color/fx_mobile_private_text_color_warning</item>
+ tools:ignore="UnusedResources">@color/fx_mobile_private_text_color_critical</item>
<item name="mozacLoginSelectHeaderTextStyle" tools:ignore="UnusedResources">@style/SelectPromptHeaderTextStyle</item>
<item name="mozacSelectCreditCardHeaderTextStyle" tools:ignore="UnusedResources">@style/SelectPromptHeaderTextStyle</item>
<item name="mozacSelectAddressHeaderTextStyle" tools:ignore="UnusedResources">@style/SelectPromptHeaderTextStyle</item>
@@ -263,7 +263,7 @@
<!-- Disabled text -->
<item name="textDisabled">@color/fx_mobile_private_text_color_disabled</item>
<!-- Warning text -->
- <item name="textWarning">@color/fx_mobile_private_text_color_warning</item>
+ <item name="textCritical">@color/fx_mobile_private_text_color_critical</item>
<!-- Small heading, Text link -->
<item name="textAccent">@color/fx_mobile_private_text_color_accent</item>
<!-- Text Inverted/On Color -->
@@ -378,8 +378,8 @@
</style>
<style name="DestructiveButton" parent="NeutralButton">
- <item name="iconTint">@color/fx_mobile_icon_color_warning_button</item>
- <item name="android:textColor">@color/fx_mobile_text_color_warning_button</item>
+ <item name="iconTint">@color/fx_mobile_icon_color_critical_button</item>
+ <item name="android:textColor">@color/fx_mobile_text_color_critical_button</item>
</style>
<style name="PositiveButton" parent="NeutralButton">
diff --git a/mobile/android/fenix/app/src/main/res/xml/home_preferences.xml b/mobile/android/fenix/app/src/main/res/xml/home_preferences.xml
index 35d97891d5..5ca4cff86d 100644
--- a/mobile/android/fenix/app/src/main/res/xml/home_preferences.xml
+++ b/mobile/android/fenix/app/src/main/res/xml/home_preferences.xml
@@ -20,8 +20,8 @@
android:title="@string/customize_toggle_jump_back_in" />
<androidx.preference.SwitchPreference
- android:key="@string/pref_key_recent_bookmarks"
- android:title="@string/customize_toggle_recent_bookmarks" />
+ android:key="@string/pref_key_customization_bookmarks"
+ android:title="@string/customize_toggle_bookmarks" />
<androidx.preference.SwitchPreference
android:key="@string/pref_key_history_metadata_feature"
diff --git a/mobile/android/fenix/app/src/main/res/xml/preferences.xml b/mobile/android/fenix/app/src/main/res/xml/preferences.xml
index 0bc93722fe..9560b96efd 100644
--- a/mobile/android/fenix/app/src/main/res/xml/preferences.xml
+++ b/mobile/android/fenix/app/src/main/res/xml/preferences.xml
@@ -82,6 +82,12 @@
app:iconSpaceReserved="false"
android:title="@string/preferences_language" />
+ <androidx.preference.Preference
+ android:key="@string/pref_key_translation"
+ app:iconSpaceReserved="false"
+ app:isPreferenceVisible="false"
+ android:title="@string/preferences_translations" />
+
<org.mozilla.fenix.settings.DefaultBrowserPreference
android:key="@string/pref_key_make_default_browser"
app:iconSpaceReserved="false"
diff --git a/mobile/android/fenix/app/src/main/res/xml/shortcuts.xml b/mobile/android/fenix/app/src/main/res/xml/shortcuts.xml
index 1f81f55a3e..fb28b5782b 100644
--- a/mobile/android/fenix/app/src/main/res/xml/shortcuts.xml
+++ b/mobile/android/fenix/app/src/main/res/xml/shortcuts.xml
@@ -8,8 +8,7 @@
android:shortcutId="password_manager"
android:enabled="true"
android:icon="@drawable/ic_static_password_shortcut"
- android:shortcutShortLabel="@string/home_screen_shortcut_passwords"
- android:shortcutLongLabel="@string/home_screen_shortcut_passwords">
+ android:shortcutShortLabel="@string/home_screen_shortcut_passwords">
<intent
android:action="org.mozilla.fenix.OPEN_PASSWORD_MANAGER"
android:targetPackage="org.mozilla.fenix"
@@ -19,8 +18,7 @@
android:shortcutId="open_new_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_TAB"
android:targetPackage="org.mozilla.fenix"
@@ -30,8 +28,7 @@
android:shortcutId="open_new_private_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_private_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_private_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_PRIVATE_TAB"
android:targetPackage="org.mozilla.fenix"
diff --git a/mobile/android/fenix/app/src/main/res/xml/sync_debug_preferences.xml b/mobile/android/fenix/app/src/main/res/xml/sync_debug_preferences.xml
index bd75db07b9..3e283d121d 100644
--- a/mobile/android/fenix/app/src/main/res/xml/sync_debug_preferences.xml
+++ b/mobile/android/fenix/app/src/main/res/xml/sync_debug_preferences.xml
@@ -31,4 +31,13 @@
android:title="@string/preferences_use_react_fxa"
app:iconSpaceReserved="false"
/>
+ <androidx.preference.Preference
+ android:key="@string/pref_key_sync_debug_network_error"
+ android:title="@string/preferences_sync_debug_network_error_button_title" />
+ <androidx.preference.Preference
+ android:key="@string/pref_key_sync_debug_temporary_auth_error"
+ android:title="@string/preferences_sync_debug_temporary_auth_error_button_title" />
+ <androidx.preference.Preference
+ android:key="@string/pref_key_sync_debug_permanent_auth_error"
+ android:title="@string/preferences_sync_debug_permanent_auth_error_button_title" />
</PreferenceScreen>
diff --git a/mobile/android/fenix/app/src/nightly/res/xml/shortcuts.xml b/mobile/android/fenix/app/src/nightly/res/xml/shortcuts.xml
index 1f81f55a3e..fb28b5782b 100644
--- a/mobile/android/fenix/app/src/nightly/res/xml/shortcuts.xml
+++ b/mobile/android/fenix/app/src/nightly/res/xml/shortcuts.xml
@@ -8,8 +8,7 @@
android:shortcutId="password_manager"
android:enabled="true"
android:icon="@drawable/ic_static_password_shortcut"
- android:shortcutShortLabel="@string/home_screen_shortcut_passwords"
- android:shortcutLongLabel="@string/home_screen_shortcut_passwords">
+ android:shortcutShortLabel="@string/home_screen_shortcut_passwords">
<intent
android:action="org.mozilla.fenix.OPEN_PASSWORD_MANAGER"
android:targetPackage="org.mozilla.fenix"
@@ -19,8 +18,7 @@
android:shortcutId="open_new_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_TAB"
android:targetPackage="org.mozilla.fenix"
@@ -30,8 +28,7 @@
android:shortcutId="open_new_private_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_private_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_private_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_PRIVATE_TAB"
android:targetPackage="org.mozilla.fenix"
diff --git a/mobile/android/fenix/app/src/release/res/xml/shortcuts.xml b/mobile/android/fenix/app/src/release/res/xml/shortcuts.xml
index d9b9b27dcc..31d6b91379 100644
--- a/mobile/android/fenix/app/src/release/res/xml/shortcuts.xml
+++ b/mobile/android/fenix/app/src/release/res/xml/shortcuts.xml
@@ -8,8 +8,7 @@
android:shortcutId="password_manager"
android:enabled="true"
android:icon="@drawable/ic_static_password_shortcut"
- android:shortcutShortLabel="@string/home_screen_shortcut_passwords"
- android:shortcutLongLabel="@string/home_screen_shortcut_passwords">
+ android:shortcutShortLabel="@string/home_screen_shortcut_passwords">
<intent
android:action="org.mozilla.fenix.OPEN_PASSWORD_MANAGER"
android:targetPackage="org.mozilla.firefox"
@@ -19,8 +18,7 @@
android:shortcutId="open_new_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_TAB"
android:targetPackage="org.mozilla.firefox"
@@ -30,8 +28,7 @@
android:shortcutId="open_new_private_tab"
android:enabled="true"
android:icon="@drawable/ic_static_shortcut_private_tab"
- android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2"
- android:shortcutLongLabel="@string/home_screen_shortcut_open_new_private_tab_2">
+ android:shortcutShortLabel="@string/home_screen_shortcut_open_new_private_tab_2">
<intent
android:action="org.mozilla.fenix.OPEN_PRIVATE_TAB"
android:targetPackage="org.mozilla.firefox"
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/FenixApplicationTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/FenixApplicationTest.kt
index b758f6d79c..f114c21bfd 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/FenixApplicationTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/FenixApplicationTest.kt
@@ -39,6 +39,7 @@ import org.mozilla.fenix.components.metrics.MozillaProductDetector
import org.mozilla.fenix.components.toolbar.ToolbarPosition
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
import org.mozilla.fenix.utils.Settings
+import org.robolectric.Shadows.shadowOf
import org.robolectric.annotation.Config
@RunWith(FenixRobolectricTestRunner::class)
@@ -139,7 +140,7 @@ class FenixApplicationTest {
every { settings.shouldUseLightTheme } returns true
every { settings.signedInFxaAccount } returns true
every { settings.showRecentTabsFeature } returns true
- every { settings.showRecentBookmarksFeature } returns true
+ every { settings.showBookmarksHomeFeature } returns true
every { settings.showTopSitesFeature } returns true
every { settings.historyMetadataUIFeature } returns true
every { settings.showPocketRecommendationsFeature } returns true
@@ -148,7 +149,7 @@ class FenixApplicationTest {
every { application.getDeviceTotalRAM() } returns 7L
every { settings.inactiveTabsAreEnabled } returns true
every { application.isDeviceRamAboveThreshold } returns true
- every { settings.isTabletAndTabStripEnabled } returns true
+ every { settings.isTabStripEnabled } returns true
assertTrue(settings.contileContextId.isEmpty())
assertNull(TopSites.contextId.testGetValue())
@@ -218,6 +219,20 @@ class FenixApplicationTest {
}
@Test
+ @Config(sdk = [28])
+ fun `GIVEN the current etp mode is custom WHEN tracking the etp metric THEN track also the cookies option on SDK 28`() {
+ val settings: Settings = mockk(relaxed = true) {
+ every { shouldUseTrackingProtection } returns true
+ every { useCustomTrackingProtection } returns true
+ every { blockCookiesSelectionInCustomTrackingProtection } returns "Test"
+ }
+
+ application.setStartupMetrics(browserStore, settings, browsersCache, mozillaProductDetector)
+
+ assertEquals("Test", Preferences.etpCustomCookiesSelection.testGetValue())
+ }
+
+ @Test
fun `GIVEN the current etp mode is custom WHEN tracking the etp metric THEN track also the cookies option`() {
val settings: Settings = mockk(relaxed = true) {
every { shouldUseTrackingProtection } returns true
@@ -225,6 +240,10 @@ class FenixApplicationTest {
every { blockCookiesSelectionInCustomTrackingProtection } returns "Test"
}
+ val packageManager: PackageManager = testContext.packageManager
+ shadowOf(packageManager)
+ .setInstallSourceInfo(testContext.packageName, "initiating.package", "installing.package")
+
application.setStartupMetrics(browserStore, settings, browsersCache, mozillaProductDetector)
assertEquals("Test", Preferences.etpCustomCookiesSelection.testGetValue())
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/BrowserFragmentTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/BrowserFragmentTest.kt
index 8c13905920..05aa911a9a 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/BrowserFragmentTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/BrowserFragmentTest.kt
@@ -19,6 +19,7 @@ import io.mockk.spyk
import io.mockk.unmockkObject
import io.mockk.unmockkStatic
import io.mockk.verify
+import io.mockk.verifyOrder
import mozilla.components.browser.state.action.RestoreCompleteAction
import mozilla.components.browser.state.action.TabListAction
import mozilla.components.browser.state.state.BrowserState
@@ -30,6 +31,8 @@ import mozilla.components.browser.toolbar.BrowserToolbar
import mozilla.components.support.test.ext.joinBlocking
import mozilla.components.support.test.rule.MainCoroutineRule
import org.junit.After
+import org.junit.Assert.assertNotNull
+import org.junit.Assert.assertNull
import org.junit.Assert.assertTrue
import org.junit.Assert.fail
import org.junit.Before
@@ -83,6 +86,7 @@ class BrowserFragmentTest {
every { browserFragment.view } returns view
every { browserFragment.isAdded } returns true
every { browserFragment.browserToolbarView } returns mockk(relaxed = true)
+ every { browserFragment.browserToolbarInteractor } returns mockk(relaxed = true)
every { browserFragment.activity } returns homeActivity
every { browserFragment.lifecycle } returns lifecycleOwner.lifecycle
every { context.components.fenixOnboarding } returns onboarding
@@ -91,6 +95,8 @@ class BrowserFragmentTest {
every { browserFragment.initializeUI(any(), any()) } returns mockk()
every { browserFragment.fullScreenChanged(any()) } returns Unit
every { browserFragment.resumeDownloadDialogState(any(), any(), any(), any()) } returns Unit
+ every { browserFragment.binding } returns mockk(relaxed = true)
+ every { browserFragment.viewLifecycleOwner } returns mockk(relaxed = true)
testTab = createTab(url = "https://mozilla.org")
store = BrowserStore()
@@ -132,6 +138,50 @@ class BrowserFragmentTest {
}
@Test
+ fun `WHEN isMicrosurveyEnabled and isExperimentationEnabled are true GIVEN a call to setupMicrosurvey THEN messagingFeature is initialized`() {
+ every { context.settings().isExperimentationEnabled } returns true
+
+ assertNull(browserFragment.messagingFeature.get())
+
+ browserFragment.setupMicrosurvey(isMicrosurveyEnabled = true)
+
+ assertNotNull(browserFragment.messagingFeature.get())
+ }
+
+ @Test
+ fun `WHEN isMicrosurveyEnabled and isExperimentationEnabled are false GIVEN a call to setupMicrosurvey THEN messagingFeature is not initialized`() {
+ every { context.settings().isExperimentationEnabled } returns false
+
+ assertNull(browserFragment.messagingFeature.get())
+
+ browserFragment.setupMicrosurvey(isMicrosurveyEnabled = false)
+
+ assertNull(browserFragment.messagingFeature.get())
+ }
+
+ @Test
+ fun `WHEN isMicrosurveyEnabled is true and isExperimentationEnabled false GIVEN a call to setupMicrosurvey THEN messagingFeature is not initialized`() {
+ every { context.settings().isExperimentationEnabled } returns false
+
+ assertNull(browserFragment.messagingFeature.get())
+
+ browserFragment.setupMicrosurvey(isMicrosurveyEnabled = true)
+
+ assertNull(browserFragment.messagingFeature.get())
+ }
+
+ @Test
+ fun `WHEN isMicrosurveyEnabled is false and isExperimentationEnabled true GIVEN a call to setupMicrosurvey THEN messagingFeature is not initialized`() {
+ every { context.settings().isExperimentationEnabled } returns true
+
+ assertNull(browserFragment.messagingFeature.get())
+
+ browserFragment.setupMicrosurvey(isMicrosurveyEnabled = false)
+
+ assertNull(browserFragment.messagingFeature.get())
+ }
+
+ @Test
fun `GIVEN browser UI is initialized WHEN selected tab changes THEN toolbar is expanded`() {
browserFragment.browserInitialized = true
browserFragment.observeTabSelection(store)
@@ -329,12 +379,22 @@ class BrowserFragmentTest {
browserFragment._browserToolbarView = null
browserFragment.onConfigurationChanged(mockk(relaxed = true))
verify(exactly = 0) { browserFragment.onUpdateToolbarForConfigurationChange(any()) }
- verify(exactly = 0) { browserFragment.updateToolbarActions(any()) }
+ verify(exactly = 0) { browserFragment.updateTabletToolbarActions(any()) }
browserFragment._browserToolbarView = browserToolbarView
+
+ mockkObject(ThemeManager.Companion)
+ every { ThemeManager.resolveAttribute(any(), context) } returns mockk(relaxed = true)
+
+ mockkStatic(AppCompatResources::class)
+ every { AppCompatResources.getDrawable(context, any()) } returns mockk()
+
browserFragment.onConfigurationChanged(mockk(relaxed = true))
verify(exactly = 1) { browserFragment.onUpdateToolbarForConfigurationChange(any()) }
- verify(exactly = 1) { browserFragment.updateToolbarActions(any()) }
+ verify(exactly = 1) { browserFragment.updateTabletToolbarActions(any()) }
+
+ unmockkObject(ThemeManager.Companion)
+ unmockkStatic(AppCompatResources::class)
}
@Test
@@ -343,15 +403,26 @@ class BrowserFragmentTest {
every { browserFragment.context } returns null
browserFragment._browserToolbarView = browserToolbarView
+ mockkObject(ThemeManager.Companion)
+ every { ThemeManager.resolveAttribute(any(), context) } returns mockk(relaxed = true)
+
+ mockkStatic(AppCompatResources::class)
+ every { AppCompatResources.getDrawable(context, any()) } returns mockk()
+
browserFragment.onConfigurationChanged(mockk(relaxed = true))
verify(exactly = 1) { browserToolbarView.dismissMenu() }
+
+ unmockkObject(ThemeManager.Companion)
+ unmockkStatic(AppCompatResources::class)
}
@Test
fun `WHEN fragment configuration screen size changes between tablet and mobile size THEN tablet action items added and removed`() {
val browserToolbarView: BrowserToolbarView = mockk(relaxed = true)
val browserToolbar: BrowserToolbar = mockk(relaxed = true)
+ val leadingAction: BrowserToolbar.Button = mockk(relaxed = true)
+ browserFragment.leadingAction = leadingAction
browserFragment._browserToolbarView = browserToolbarView
every { browserFragment.browserToolbarView.view } returns browserToolbar
@@ -377,6 +448,8 @@ class BrowserFragmentTest {
fun `WHEN fragment configuration change enables tablet size twice THEN tablet action items are only added once`() {
val browserToolbarView: BrowserToolbarView = mockk(relaxed = true)
val browserToolbar: BrowserToolbar = mockk(relaxed = true)
+ val leadingAction: BrowserToolbar.Button = mockk(relaxed = true)
+ browserFragment.leadingAction = leadingAction
browserFragment._browserToolbarView = browserToolbarView
every { browserFragment.browserToolbarView.view } returns browserToolbar
@@ -401,6 +474,8 @@ class BrowserFragmentTest {
fun `WHEN fragment configuration change sets mobile size twice THEN tablet action items are not added or removed`() {
val browserToolbarView: BrowserToolbarView = mockk(relaxed = true)
val browserToolbar: BrowserToolbar = mockk(relaxed = true)
+ val leadingAction: BrowserToolbar.Button = mockk(relaxed = true)
+ browserFragment.leadingAction = leadingAction
browserFragment._browserToolbarView = browserToolbarView
every { browserFragment.browserToolbarView.view } returns browserToolbar
@@ -445,4 +520,181 @@ class BrowserFragmentTest {
verify(exactly = 1) { settings.lastBrowseActivity = any() }
}
+
+ @Test
+ fun `GIVEN redesign feature is off and configuration is portrait WHEN updating navigation icons THEN only leading action is added`() {
+ mockThemeManagerAndAppCompatResources()
+
+ val redesignEnabled = false
+ val isLandscape = false
+ browserFragment.updateBrowserToolbarLeadingAndNavigationActions(
+ context = context,
+ redesignEnabled = redesignEnabled,
+ isLandscape = isLandscape,
+ isTablet = false,
+ isPrivate = false,
+ feltPrivateBrowsingEnabled = false,
+ )
+
+ verify(exactly = 1) { browserFragment.addLeadingAction(any(), any(), any()) }
+ verify(exactly = 0) { browserFragment.addTabletActions(any()) }
+ verify(exactly = 0) { browserFragment.addNavigationActions(any()) }
+
+ unmockThemeManagerAndAppCompatResources()
+ }
+
+ @Test
+ fun `GIVEN redesign feature is off and configuration is landscape WHEN updating navigation icons THEN only leading action is added`() {
+ mockThemeManagerAndAppCompatResources()
+
+ val redesignEnabled = false
+ val isLandscape = true
+ browserFragment.updateBrowserToolbarLeadingAndNavigationActions(
+ context = context,
+ redesignEnabled = redesignEnabled,
+ isLandscape = isLandscape,
+ isTablet = false,
+ isPrivate = false,
+ feltPrivateBrowsingEnabled = false,
+ )
+
+ verify(exactly = 1) { browserFragment.addLeadingAction(any(), any(), any()) }
+ verify(exactly = 0) { browserFragment.addTabletActions(any()) }
+ verify(exactly = 0) { browserFragment.addNavigationActions(any()) }
+
+ unmockThemeManagerAndAppCompatResources()
+ }
+
+ @Test
+ fun `GIVEN redesign feature is on and configuration is portrait WHEN updating navigation icons THEN no actions were added`() {
+ mockThemeManagerAndAppCompatResources()
+
+ val redesignEnabled = true
+ val isLandscape = false
+ browserFragment.updateBrowserToolbarLeadingAndNavigationActions(
+ context = context,
+ redesignEnabled = redesignEnabled,
+ isLandscape = isLandscape,
+ isTablet = false,
+ isPrivate = false,
+ feltPrivateBrowsingEnabled = false,
+ )
+
+ verify(exactly = 0) { browserFragment.addLeadingAction(any(), any(), any()) }
+ verify(exactly = 0) { browserFragment.addTabletActions(any()) }
+ verify(exactly = 0) { browserFragment.addNavigationActions(any()) }
+
+ unmockThemeManagerAndAppCompatResources()
+ }
+
+ @Test
+ fun `GIVEN redesign feature is on and configuration is landscape WHEN updating navigation icons THEN navigation buttons and a leading action are added in order`() {
+ mockThemeManagerAndAppCompatResources()
+
+ val redesignEnabled = true
+ val isLandscape = true
+ browserFragment.updateBrowserToolbarLeadingAndNavigationActions(
+ context = context,
+ redesignEnabled = redesignEnabled,
+ isLandscape = isLandscape,
+ isTablet = false,
+ isPrivate = false,
+ feltPrivateBrowsingEnabled = false,
+ )
+
+ verify(exactly = 1) { browserFragment.addLeadingAction(any(), any(), any()) }
+ verify(exactly = 0) { browserFragment.addTabletActions(any()) }
+ verify(exactly = 1) { browserFragment.addNavigationActions(any()) }
+
+ verifyOrder {
+ browserFragment.addNavigationActions(any())
+ browserFragment.addLeadingAction(any(), any(), any())
+ }
+
+ unmockThemeManagerAndAppCompatResources()
+ }
+
+ @Test
+ fun `GIVEN redesign feature is off and is tablet WHEN updating navigation icons THEN leading action and navigation buttons are added in order`() {
+ mockThemeManagerAndAppCompatResources()
+
+ val isTablet = true
+
+ val redesignEnabled = false
+ val isLandscape = true
+ browserFragment.updateBrowserToolbarLeadingAndNavigationActions(
+ context = context,
+ redesignEnabled = redesignEnabled,
+ isLandscape = isLandscape,
+ isTablet = isTablet,
+ isPrivate = false,
+ feltPrivateBrowsingEnabled = false,
+ )
+
+ verifyOrder {
+ browserFragment.addLeadingAction(any(), any(), any())
+ browserFragment.addNavigationActions(any())
+ }
+
+ unmockThemeManagerAndAppCompatResources()
+ }
+
+ @Test
+ fun `GIVEN redesign feature is on and orientation is portrait and it is not tablet WHEN updating navigation icons THEN navigation items and leading action are removed`() {
+ mockThemeManagerAndAppCompatResources()
+
+ val redesignEnabled = true
+ val isLandscape = false
+ val isTablet = false
+
+ browserFragment.updateBrowserToolbarLeadingAndNavigationActions(
+ context = context,
+ redesignEnabled = redesignEnabled,
+ isLandscape = isLandscape,
+ isPrivate = false,
+ isTablet = isTablet,
+ feltPrivateBrowsingEnabled = false,
+ )
+
+ verify(exactly = 1) { browserFragment.removeLeadingAction() }
+ verify(exactly = 1) { browserFragment.removeNavigationActions() }
+
+ unmockThemeManagerAndAppCompatResources()
+ }
+
+ @Test
+ fun `GIVEN redesign feature is on and orientation is portrait and it is tablet WHEN updating navigation icons THEN navigation items and leading action are added`() {
+ mockThemeManagerAndAppCompatResources()
+
+ val redesignEnabled = true
+ val isLandscape = false
+ val isTablet = true
+
+ browserFragment.updateBrowserToolbarLeadingAndNavigationActions(
+ context = context,
+ redesignEnabled = redesignEnabled,
+ isLandscape = isLandscape,
+ isPrivate = false,
+ isTablet = isTablet,
+ feltPrivateBrowsingEnabled = false,
+ )
+
+ verify(exactly = 1) { browserFragment.addLeadingAction(any(), any(), any()) }
+ verify(exactly = 1) { browserFragment.addNavigationActions(any()) }
+
+ unmockThemeManagerAndAppCompatResources()
+ }
+
+ private fun mockThemeManagerAndAppCompatResources() {
+ mockkObject(ThemeManager.Companion)
+ every { ThemeManager.resolveAttribute(any(), context) } returns mockk(relaxed = true)
+
+ mockkStatic(AppCompatResources::class)
+ every { AppCompatResources.getDrawable(context, any()) } returns mockk()
+ }
+
+ private fun unmockThemeManagerAndAppCompatResources() {
+ unmockkObject(ThemeManager.Companion)
+ unmockkStatic(AppCompatResources::class)
+ }
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/StandardSnackbarErrorBindingTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/StandardSnackbarErrorBindingTest.kt
index f102eafbb7..33bdfd9a7e 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/StandardSnackbarErrorBindingTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/StandardSnackbarErrorBindingTest.kt
@@ -97,7 +97,7 @@ class StandardSnackbarErrorBindingTest {
snackbar.setSnackBarTextColor(
ContextCompat.getColor(
activity,
- R.color.fx_mobile_text_color_warning,
+ R.color.fx_mobile_text_color_critical,
),
)
snackbar.setAction(
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/TranslationsBindingTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/TranslationsBindingTest.kt
index f92d8f22e2..03c95743d7 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/TranslationsBindingTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/browser/TranslationsBindingTest.kt
@@ -71,6 +71,7 @@ class TranslationsBindingTest {
detectedLanguages = detectedLanguages,
error = null,
isEngineReady = true,
+ hasVisibleChange = true,
requestedTranslationPair = TranslationPair(
fromLanguage = englishLanguage.code,
toLanguage = spanishLanguage.code,
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/AppStoreTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/AppStoreTest.kt
index cfd2e28766..cf8674c65a 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/AppStoreTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/AppStoreTest.kt
@@ -34,9 +34,9 @@ import org.mozilla.fenix.components.appstate.AppState
import org.mozilla.fenix.components.appstate.filterOut
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.getFilteredStories
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesCategory
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesSelectedCategory
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTab
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTabState
import org.mozilla.fenix.home.recenttabs.RecentTab
@@ -262,7 +262,7 @@ class AppStoreTest {
assertEquals(0, appStore.state.collections.size)
assertEquals(0, appStore.state.topSites.size)
assertEquals(0, appStore.state.recentTabs.size)
- assertEquals(0, appStore.state.recentBookmarks.size)
+ assertEquals(0, appStore.state.bookmarks.size)
assertEquals(0, appStore.state.recentHistory.size)
assertEquals(BrowsingMode.Normal, appStore.state.mode)
assertEquals(
@@ -273,7 +273,7 @@ class AppStoreTest {
val collections: List<TabCollection> = listOf(mockk())
val topSites: List<TopSite> = listOf(mockk(), mockk())
val recentTabs: List<RecentTab> = listOf(mockk(), mockk())
- val recentBookmarks: List<RecentBookmark> = listOf(mockk(), mockk())
+ val bookmarks: List<Bookmark> = listOf(mockk(), mockk())
val group1 = RecentHistoryGroup(title = "test One")
val group2 = RecentHistoryGroup(title = "testSearchTerm")
val group3 = RecentHistoryGroup(title = "test two")
@@ -296,7 +296,7 @@ class AppStoreTest {
topSites = topSites,
showCollectionPlaceholder = true,
recentTabs = recentTabs,
- recentBookmarks = recentBookmarks,
+ bookmarks = bookmarks,
recentHistory = recentHistory,
recentSyncedTabState = recentSyncedTabState,
),
@@ -305,7 +305,7 @@ class AppStoreTest {
assertEquals(collections, appStore.state.collections)
assertEquals(topSites, appStore.state.topSites)
assertEquals(recentTabs, appStore.state.recentTabs)
- assertEquals(recentBookmarks, appStore.state.recentBookmarks)
+ assertEquals(bookmarks, appStore.state.bookmarks)
assertEquals(listOf(group1, group2, group3, highlight), appStore.state.recentHistory)
assertEquals(BrowsingMode.Private, appStore.state.mode)
assertEquals(
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCaseTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCaseTest.kt
index e611dc8d90..efcbc9da26 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCaseTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/bookmarks/BookmarksUseCaseTest.kt
@@ -8,6 +8,7 @@ import io.mockk.coEvery
import io.mockk.coVerify
import io.mockk.every
import io.mockk.mockk
+import io.mockk.slot
import kotlinx.coroutines.test.runTest
import mozilla.appservices.places.BookmarkRoot
import mozilla.components.concept.storage.BookmarkNode
@@ -16,11 +17,13 @@ import mozilla.components.concept.storage.BookmarksStorage
import mozilla.components.concept.storage.HistoryStorage
import mozilla.components.concept.storage.VisitInfo
import mozilla.components.concept.storage.VisitType
+import mozilla.components.support.test.capture
import org.junit.Assert.assertEquals
-import org.junit.Assert.assertFalse
+import org.junit.Assert.assertNotNull
+import org.junit.Assert.assertNull
import org.junit.Assert.assertTrue
import org.junit.Test
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import java.util.concurrent.TimeUnit
class BookmarksUseCaseTest {
@@ -37,7 +40,7 @@ class BookmarksUseCaseTest {
val result = useCase.addBookmark("https://mozilla.org", "Mozilla")
- assertFalse(result)
+ assertNull(result)
}
@Test
@@ -52,7 +55,7 @@ class BookmarksUseCaseTest {
val result = useCase.addBookmark("https://mozilla.org", "Mozilla")
- assertTrue(result)
+ assertNotNull(result)
coVerify { bookmarksStorage.addItem(BookmarkRoot.Mobile.id, "https://mozilla.org", "Mozilla", null) }
}
@@ -69,16 +72,17 @@ class BookmarksUseCaseTest {
val result = useCase.addBookmark("https://mozilla.org", "Mozilla", parentGuid = "parentGuid")
- assertTrue(result)
+ assertNotNull(result)
coVerify { bookmarksStorage.addItem("parentGuid", "https://mozilla.org", "Mozilla", null) }
}
@Test
- fun `WHEN recently saved bookmarks exist THEN retrieve the list from storage`() = runTest {
+ fun `WHEN saved bookmarks exist THEN retrieve the list from storage using limited history`() = runTest {
val bookmarksStorage = mockk<BookmarksStorage>(relaxed = true)
val historyStorage = mockk<HistoryStorage>(relaxed = true)
val useCase = BookmarksUseCase(bookmarksStorage, historyStorage)
+ val historyTimeFrameSlot = slot<Long>()
val visitInfo = VisitInfo(
url = "https://www.firefox.com",
@@ -100,7 +104,7 @@ class BookmarksUseCaseTest {
)
coEvery {
- historyStorage.getDetailedVisits(any(), any())
+ historyStorage.getDetailedVisits(capture(historyTimeFrameSlot), any())
}.coAnswers { listOf(visitInfo) }
coEvery {
@@ -111,11 +115,11 @@ class BookmarksUseCaseTest {
)
}.coAnswers { listOf(bookmarkNode) }
- val result = useCase.retrieveRecentBookmarks(BookmarksUseCase.DEFAULT_BOOKMARKS_TO_RETRIEVE, 22)
+ val result = useCase.retrieveRecentBookmarks(BookmarksUseCase.DEFAULT_BOOKMARKS_TO_RETRIEVE)
assertEquals(
listOf(
- RecentBookmark(
+ Bookmark(
title = bookmarkNode.title,
url = bookmarkNode.url,
previewImageUrl = visitInfo.previewImageUrl,
@@ -124,17 +128,23 @@ class BookmarksUseCaseTest {
result,
)
+ val timeNow = System.currentTimeMillis()
+ val nineDaysAgo = timeNow - TimeUnit.DAYS.toMillis(9)
+ val elevenDaysAgo = timeNow - TimeUnit.DAYS.toMillis(11)
+ assertTrue(historyTimeFrameSlot.isCaptured)
+ assertTrue(historyTimeFrameSlot.captured in elevenDaysAgo..nineDaysAgo)
+
coVerify {
bookmarksStorage.getRecentBookmarks(
BookmarksUseCase.DEFAULT_BOOKMARKS_TO_RETRIEVE,
- 22,
+ null,
any(),
)
}
}
@Test
- fun `WHEN there are no recently saved bookmarks THEN retrieve the empty list from storage`() = runTest {
+ fun `WHEN there are no bookmarks THEN retrieve the empty list from storage`() = runTest {
val bookmarksStorage = mockk<BookmarksStorage>(relaxed = true)
val historyStorage = mockk<HistoryStorage>(relaxed = true)
val useCase = BookmarksUseCase(bookmarksStorage, historyStorage)
@@ -148,7 +158,7 @@ class BookmarksUseCaseTest {
coVerify {
bookmarksStorage.getRecentBookmarks(
BookmarksUseCase.DEFAULT_BOOKMARKS_TO_RETRIEVE,
- TimeUnit.DAYS.toMillis(BookmarksUseCase.DEFAULT_BOOKMARKS_DAYS_AGE_TO_RETRIEVE),
+ null,
any(),
)
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuAccessPointTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuAccessPointTest.kt
new file mode 100644
index 0000000000..616e25e160
--- /dev/null
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuAccessPointTest.kt
@@ -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/. */
+
+package org.mozilla.fenix.components.menu
+
+import org.junit.Assert.assertEquals
+import org.junit.Test
+import org.mozilla.fenix.components.accounts.FenixFxAEntryPoint
+
+class MenuAccessPointTest {
+
+ @Test
+ fun `WHEN menu access points are converted to Fenix FxA entry points THEN return the correct entry points`() {
+ assertEquals(
+ FenixFxAEntryPoint.BrowserToolbar,
+ MenuAccessPoint.Browser.toFenixFxAEntryPoint(),
+ )
+ assertEquals(FenixFxAEntryPoint.Unknown, MenuAccessPoint.External.toFenixFxAEntryPoint())
+ assertEquals(FenixFxAEntryPoint.HomeMenu, MenuAccessPoint.Home.toFenixFxAEntryPoint())
+ }
+}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuDialogMiddlewareTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuDialogMiddlewareTest.kt
new file mode 100644
index 0000000000..1dae1c3656
--- /dev/null
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuDialogMiddlewareTest.kt
@@ -0,0 +1,206 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package org.mozilla.fenix.components.menu
+
+import kotlinx.coroutines.test.runTest
+import mozilla.appservices.places.BookmarkRoot
+import mozilla.components.browser.state.state.createTab
+import mozilla.components.concept.storage.BookmarksStorage
+import mozilla.components.support.test.libstate.ext.waitUntilIdle
+import mozilla.components.support.test.rule.MainCoroutineRule
+import org.junit.Assert.assertEquals
+import org.junit.Assert.assertFalse
+import org.junit.Assert.assertNotNull
+import org.junit.Assert.assertNull
+import org.junit.Assert.assertTrue
+import org.junit.Rule
+import org.junit.Test
+import org.mockito.Mockito.never
+import org.mockito.Mockito.spy
+import org.mockito.Mockito.verify
+import org.mozilla.fenix.components.bookmarks.BookmarksUseCase.AddBookmarksUseCase
+import org.mozilla.fenix.components.menu.fake.FakeBookmarksStorage
+import org.mozilla.fenix.components.menu.middleware.MenuDialogMiddleware
+import org.mozilla.fenix.components.menu.store.BookmarkState
+import org.mozilla.fenix.components.menu.store.BrowserMenuState
+import org.mozilla.fenix.components.menu.store.MenuAction
+import org.mozilla.fenix.components.menu.store.MenuState
+import org.mozilla.fenix.components.menu.store.MenuStore
+
+class MenuDialogMiddlewareTest {
+
+ @get:Rule
+ val coroutinesTestRule = MainCoroutineRule()
+ private val scope = coroutinesTestRule.scope
+
+ private val bookmarksStorage: BookmarksStorage = FakeBookmarksStorage()
+ private val addBookmarkUseCase: AddBookmarksUseCase =
+ spy(AddBookmarksUseCase(storage = bookmarksStorage))
+
+ @Test
+ fun `GIVEN selected tab is bookmarked WHEN init action is dispatched THEN initial bookmark state is updated`() = runTest {
+ val url = "https://www.mozilla.org"
+ val title = "Mozilla"
+
+ val guid = bookmarksStorage.addItem(
+ parentGuid = BookmarkRoot.Mobile.id,
+ url = url,
+ title = title,
+ position = 5u,
+ )
+
+ val browserMenuState = BrowserMenuState(
+ selectedTab = createTab(
+ url = url,
+ title = title,
+ ),
+ )
+ val store = createStore(
+ menuState = MenuState(
+ browserMenuState = browserMenuState,
+ ),
+ )
+
+ assertNull(store.state.browserMenuState!!.bookmarkState.guid)
+ assertFalse(store.state.browserMenuState!!.bookmarkState.isBookmarked)
+
+ store.dispatch(MenuAction.InitAction).join()
+ store.waitUntilIdle()
+
+ assertEquals(guid, store.state.browserMenuState!!.bookmarkState.guid)
+ assertTrue(store.state.browserMenuState!!.bookmarkState.isBookmarked)
+ }
+
+ @Test
+ fun `GIVEN selected tab is not bookmarked WHEN init action is dispatched THEN initial bookmark state is not updated`() = runTest {
+ val url = "https://www.mozilla.org"
+ val title = "Mozilla"
+ val browserMenuState = BrowserMenuState(
+ selectedTab = createTab(
+ url = url,
+ title = title,
+ ),
+ )
+ val store = createStore(
+ menuState = MenuState(
+ browserMenuState = browserMenuState,
+ ),
+ )
+
+ assertNull(store.state.browserMenuState!!.bookmarkState.guid)
+ assertFalse(store.state.browserMenuState!!.bookmarkState.isBookmarked)
+
+ store.dispatch(MenuAction.InitAction).join()
+ store.waitUntilIdle()
+
+ assertNull(store.state.browserMenuState!!.bookmarkState.guid)
+ assertFalse(store.state.browserMenuState!!.bookmarkState.isBookmarked)
+ }
+
+ @Test
+ fun `WHEN add bookmark action is dispatched THEN bookmark state is updated`() = runTest {
+ val url = "https://www.mozilla.org"
+ val title = "Mozilla"
+ val browserMenuState = BrowserMenuState(
+ selectedTab = createTab(
+ url = url,
+ title = title,
+ ),
+ )
+ val store = createStore(
+ menuState = MenuState(
+ browserMenuState = browserMenuState,
+ ),
+ )
+
+ store.waitUntilIdle()
+
+ assertNull(store.state.browserMenuState!!.bookmarkState.guid)
+ assertFalse(store.state.browserMenuState!!.bookmarkState.isBookmarked)
+
+ store.dispatch(MenuAction.AddBookmark).join()
+ store.waitUntilIdle()
+
+ assertNotNull(store.state.browserMenuState!!.bookmarkState.guid)
+ assertTrue(store.state.browserMenuState!!.bookmarkState.isBookmarked)
+ }
+
+ @Test
+ fun `GIVEN no browser state WHEN add bookmark action is dispatched THEN bookmark state is not updated`() = runTest {
+ val store = createStore(
+ menuState = MenuState(
+ browserMenuState = null,
+ ),
+ )
+
+ assertNull(store.state.browserMenuState)
+
+ store.dispatch(MenuAction.AddBookmark).join()
+ store.waitUntilIdle()
+
+ assertNull(store.state.browserMenuState)
+ }
+
+ @Test
+ fun `GIVEN selected tab is bookmarked WHEN add bookmark action is dispatched THEN bookmark state is not updated`() = runTest {
+ val url = "https://www.mozilla.org"
+ val title = "Mozilla"
+
+ val guid = bookmarksStorage.addItem(
+ parentGuid = BookmarkRoot.Mobile.id,
+ url = url,
+ title = title,
+ position = 5u,
+ )
+
+ val browserMenuState = BrowserMenuState(
+ selectedTab = createTab(
+ url = url,
+ title = title,
+ ),
+ )
+ val store = spy(
+ createStore(
+ menuState = MenuState(
+ browserMenuState = browserMenuState,
+ ),
+ ),
+ )
+
+ store.waitUntilIdle()
+
+ assertNotNull(store.state.browserMenuState!!.bookmarkState.guid)
+ assertTrue(store.state.browserMenuState!!.bookmarkState.isBookmarked)
+
+ store.dispatch(MenuAction.AddBookmark).join()
+ store.waitUntilIdle()
+
+ verify(addBookmarkUseCase, never()).invoke(url = url, title = title)
+ verify(store, never()).dispatch(
+ MenuAction.UpdateBookmarkState(
+ bookmarkState = BookmarkState(
+ guid = guid,
+ isBookmarked = true,
+ ),
+ ),
+ )
+
+ assertNotNull(store.state.browserMenuState!!.bookmarkState.guid)
+ assertTrue(store.state.browserMenuState!!.bookmarkState.isBookmarked)
+ }
+
+ private fun createStore(
+ menuState: MenuState = MenuState(),
+ ) = MenuStore(
+ initialState = menuState,
+ middleware = listOf(
+ MenuDialogMiddleware(
+ bookmarksStorage = bookmarksStorage,
+ addBookmarkUseCase = addBookmarkUseCase,
+ scope = scope,
+ ),
+ ),
+ )
+}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuNavigationMiddlewareTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuNavigationMiddlewareTest.kt
index 5b6ddb184a..39b96003d0 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuNavigationMiddlewareTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuNavigationMiddlewareTest.kt
@@ -5,20 +5,37 @@
package org.mozilla.fenix.components.menu
import androidx.navigation.NavController
+import androidx.navigation.NavHostController
import io.mockk.mockk
import io.mockk.verify
import kotlinx.coroutines.test.runTest
import mozilla.appservices.places.BookmarkRoot
+import mozilla.components.browser.state.state.ReaderState
+import mozilla.components.browser.state.state.createTab
+import mozilla.components.concept.engine.prompt.ShareData
+import mozilla.components.service.fxa.manager.AccountState.Authenticated
+import mozilla.components.service.fxa.manager.AccountState.AuthenticationProblem
+import mozilla.components.service.fxa.manager.AccountState.NotAuthenticated
import mozilla.components.support.test.rule.MainCoroutineRule
import org.junit.Assert.assertEquals
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.R
+import org.mozilla.fenix.browser.browsingmode.BrowsingMode
+import org.mozilla.fenix.browser.browsingmode.BrowsingModeManager
+import org.mozilla.fenix.browser.browsingmode.SimpleBrowsingModeManager
+import org.mozilla.fenix.components.accounts.FenixFxAEntryPoint
+import org.mozilla.fenix.components.menu.compose.EXTENSIONS_MENU_ROUTE
+import org.mozilla.fenix.components.menu.compose.SAVE_MENU_ROUTE
+import org.mozilla.fenix.components.menu.compose.TOOLS_MENU_ROUTE
import org.mozilla.fenix.components.menu.middleware.MenuNavigationMiddleware
+import org.mozilla.fenix.components.menu.store.BrowserMenuState
import org.mozilla.fenix.components.menu.store.MenuAction
import org.mozilla.fenix.components.menu.store.MenuState
import org.mozilla.fenix.components.menu.store.MenuStore
import org.mozilla.fenix.ext.nav
+import org.mozilla.fenix.settings.SupportUtils
+import org.mozilla.fenix.settings.SupportUtils.AMO_HOMEPAGE_FOR_ANDROID
import org.mozilla.fenix.settings.SupportUtils.SumoTopic
class MenuNavigationMiddlewareTest {
@@ -28,6 +45,74 @@ class MenuNavigationMiddlewareTest {
private val scope = coroutinesTestRule.scope
private val navController: NavController = mockk(relaxed = true)
+ private val navHostController: NavHostController = mockk(relaxed = true)
+
+ @Test
+ fun `GIVEN account state is authenticated WHEN navigate to Mozilla account action is dispatched THEN dispatch navigate action to Mozilla account settings`() = runTest {
+ val store = createStore()
+ val accountState = Authenticated
+ val accesspoint = MenuAccessPoint.Home
+
+ store.dispatch(
+ MenuAction.Navigate.MozillaAccount(
+ accountState = accountState,
+ accesspoint = accesspoint,
+ ),
+ ).join()
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalAccountSettingsFragment(),
+ )
+ }
+ }
+
+ @Test
+ fun `GIVEN account state is authentication problem WHEN navigate to Mozilla account action is dispatched THEN dispatch navigate action to Mozilla account problem`() = runTest {
+ val store = createStore()
+ val accountState = AuthenticationProblem
+ val accesspoint = MenuAccessPoint.Home
+
+ store.dispatch(
+ MenuAction.Navigate.MozillaAccount(
+ accountState = accountState,
+ accesspoint = accesspoint,
+ ),
+ ).join()
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalAccountProblemFragment(
+ entrypoint = FenixFxAEntryPoint.BrowserToolbar,
+ ),
+ )
+ }
+ }
+
+ @Test
+ fun `GIVEN account state is not authenticated WHEN navigate to Mozilla account action is dispatched THEN dispatch navigate action to turn on sync`() = runTest {
+ val store = createStore()
+ val accountState = NotAuthenticated
+ val accesspoint = MenuAccessPoint.Home
+
+ store.dispatch(
+ MenuAction.Navigate.MozillaAccount(
+ accountState = accountState,
+ accesspoint = accesspoint,
+ ),
+ ).join()
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalTurnOnSync(
+ entrypoint = FenixFxAEntryPoint.HomeMenu,
+ ),
+ )
+ }
+ }
@Test
fun `WHEN navigate to settings action is dispatched THEN navigate to settings`() = runTest {
@@ -44,16 +129,16 @@ class MenuNavigationMiddlewareTest {
@Test
fun `WHEN navigate to help action is dispatched THEN navigate to SUMO Help topic`() = runTest {
- var topic: SumoTopic? = null
+ var params: BrowserNavigationParams? = null
val store = createStore(
- openSumoTopic = {
- topic = it
+ openToBrowser = {
+ params = it
},
)
store.dispatch(MenuAction.Navigate.Help).join()
- assertEquals(SumoTopic.HELP, topic)
+ assertEquals(SumoTopic.HELP, params?.sumoTopic)
}
@Test
@@ -108,14 +193,239 @@ class MenuNavigationMiddlewareTest {
}
}
+ @Test
+ fun `WHEN navigate to customize homepage action is dispatched THEN navigate to homepage settings`() = runTest {
+ val store = createStore()
+ store.dispatch(MenuAction.Navigate.CustomizeHomepage).join()
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalHomeSettingsFragment(),
+ )
+ }
+ }
+
+ @Test
+ fun `WHEN navigate to release notes action is dispatched THEN navigate to SUMO topic`() = runTest {
+ var params: BrowserNavigationParams? = null
+ val store = createStore(
+ openToBrowser = {
+ params = it
+ },
+ )
+
+ store.dispatch(MenuAction.Navigate.ReleaseNotes).join()
+
+ assertEquals(SupportUtils.WHATS_NEW_URL, params?.url)
+ }
+
+ @Test
+ fun `WHEN navigate to tools action is dispatched THEN navigate to tools submenu route`() = runTest {
+ val store = createStore()
+ store.dispatch(MenuAction.Navigate.Tools).join()
+
+ verify {
+ navHostController.navigate(route = TOOLS_MENU_ROUTE)
+ }
+ }
+
+ @Test
+ fun `WHEN navigate to save action is dispatched THEN navigate to save submenu route`() = runTest {
+ val store = createStore()
+ store.dispatch(MenuAction.Navigate.Save).join()
+
+ verify {
+ navHostController.navigate(route = SAVE_MENU_ROUTE)
+ }
+ }
+
+ @Test
+ fun `WHEN navigate to extensions action is dispatched THEN navigate to extensions submenu route`() = runTest {
+ val store = createStore()
+ store.dispatch(MenuAction.Navigate.Extensions).join()
+
+ verify {
+ navHostController.navigate(route = EXTENSIONS_MENU_ROUTE)
+ }
+ }
+
+ @Test
+ fun `WHEN navigate back action is dispatched THEN pop back stack`() = runTest {
+ val store = createStore()
+ store.dispatch(MenuAction.Navigate.Back).join()
+
+ verify { navHostController.popBackStack() }
+ }
+
+ @Test
+ fun `WHEN navigate to translate action is dispatched THEN navigate to translation dialog`() = runTest {
+ val tab = createTab(url = "https://www.mozilla.org")
+ val store = createStore(
+ menuState = MenuState(
+ browserMenuState = BrowserMenuState(
+ selectedTab = tab,
+ ),
+ ),
+ )
+
+ store.dispatch(MenuAction.Navigate.Translate).join()
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionMenuDialogFragmentToTranslationsDialogFragment(),
+ )
+ }
+ }
+
+ @Test
+ fun `GIVEN reader view is active WHEN navigate to share action is dispatched THEN navigate to share sheet`() = runTest {
+ val title = "Mozilla"
+ val readerUrl = "moz-extension://1234"
+ val activeUrl = "https://mozilla.org"
+ val readerTab = createTab(
+ url = readerUrl,
+ readerState = ReaderState(active = true, activeUrl = activeUrl),
+ title = title,
+ )
+ val store = createStore(
+ menuState = MenuState(
+ browserMenuState = BrowserMenuState(
+ selectedTab = readerTab,
+ ),
+ ),
+ )
+
+ store.dispatch(MenuAction.Navigate.Share).join()
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalShareFragment(
+ sessionId = readerTab.id,
+ data = arrayOf(
+ ShareData(
+ url = activeUrl,
+ title = title,
+ ),
+ ),
+ showPage = true,
+ ),
+ )
+ }
+ }
+
+ @Test
+ fun `GIVEN reader view is inactive WHEN navigate to share action is dispatched THEN navigate to share sheet`() = runTest {
+ val url = "https://www.mozilla.org"
+ val title = "Mozilla"
+ val tab = createTab(
+ url = url,
+ title = title,
+ )
+ val store = createStore(
+ menuState = MenuState(
+ browserMenuState = BrowserMenuState(
+ selectedTab = tab,
+ ),
+ ),
+ )
+
+ store.dispatch(MenuAction.Navigate.Share).join()
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalShareFragment(
+ sessionId = tab.id,
+ data = arrayOf(
+ ShareData(
+ url = url,
+ title = title,
+ ),
+ ),
+ showPage = true,
+ ),
+ )
+ }
+ }
+
+ @Test
+ fun `WHEN navigate to manage extensions action is dispatched THEN navigate to the extensions management`() = runTest {
+ val store = createStore()
+ store.dispatch(MenuAction.Navigate.ManageExtensions).join()
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalAddonsManagementFragment(),
+ )
+ }
+ }
+
+ @Test
+ fun `WHEN navigate to discover more extensions action is dispatched THEN navigate to the AMO page`() = runTest {
+ var params: BrowserNavigationParams? = null
+ val store = createStore(
+ openToBrowser = {
+ params = it
+ },
+ )
+
+ store.dispatch(MenuAction.Navigate.DiscoverMoreExtensions).join()
+
+ assertEquals(AMO_HOMEPAGE_FOR_ANDROID, params?.url)
+ }
+
+ @Test
+ fun `WHEN navigate to new tab action is dispatched THEN navigate to the home screen`() = runTest {
+ val browsingModeManager = SimpleBrowsingModeManager(BrowsingMode.Private)
+ val store = createStore(
+ browsingModeManager = browsingModeManager,
+ )
+ store.dispatch(MenuAction.Navigate.NewTab).join()
+
+ assertEquals(BrowsingMode.Normal, browsingModeManager.mode)
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalHome(focusOnAddressBar = true),
+ )
+ }
+ }
+
+ @Test
+ fun `WHEN navigate to new private tab action is dispatched THEN navigate to the home screen in private mode`() = runTest {
+ val browsingModeManager = SimpleBrowsingModeManager(BrowsingMode.Normal)
+ val store = createStore(
+ browsingModeManager = browsingModeManager,
+ )
+ store.dispatch(MenuAction.Navigate.NewPrivateTab).join()
+
+ assertEquals(BrowsingMode.Private, browsingModeManager.mode)
+
+ verify {
+ navController.nav(
+ R.id.menuDialogFragment,
+ MenuDialogFragmentDirections.actionGlobalHome(focusOnAddressBar = true),
+ )
+ }
+ }
+
private fun createStore(
- openSumoTopic: (topic: SumoTopic) -> Unit = {},
+ menuState: MenuState = MenuState(),
+ browsingModeManager: BrowsingModeManager = mockk(relaxed = true),
+ openToBrowser: (params: BrowserNavigationParams) -> Unit = {},
) = MenuStore(
- initialState = MenuState(),
+ initialState = menuState,
middleware = listOf(
MenuNavigationMiddleware(
navController = navController,
- openSumoTopic = openSumoTopic,
+ navHostController = navHostController,
+ browsingModeManager = browsingModeManager,
+ openToBrowser = openToBrowser,
scope = scope,
),
),
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuStoreTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuStoreTest.kt
index 6c6bd73b50..2ddab49262 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuStoreTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuStoreTest.kt
@@ -5,33 +5,130 @@
package org.mozilla.fenix.components.menu
import kotlinx.coroutines.test.runTest
+import mozilla.components.browser.state.state.ContentState
+import mozilla.components.browser.state.state.TabSessionState
+import mozilla.components.lib.state.Middleware
+import mozilla.components.support.test.libstate.ext.waitUntilIdle
+import org.junit.Assert.assertEquals
import org.junit.Assert.assertFalse
+import org.junit.Assert.assertNotNull
+import org.junit.Assert.assertNull
import org.junit.Assert.assertTrue
-import org.junit.Before
import org.junit.Test
+import org.mozilla.fenix.components.menu.store.BookmarkState
+import org.mozilla.fenix.components.menu.store.BrowserMenuState
import org.mozilla.fenix.components.menu.store.MenuAction
import org.mozilla.fenix.components.menu.store.MenuState
import org.mozilla.fenix.components.menu.store.MenuStore
+import org.mozilla.fenix.components.menu.store.copyWithBrowserMenuState
class MenuStoreTest {
- private lateinit var state: MenuState
- private lateinit var store: MenuStore
+ @Test
+ fun `WHEN store is created THEN init action is dispatched`() {
+ var initActionObserved = false
+ val testMiddleware: Middleware<MenuState, MenuAction> = { _, next, action ->
+ if (action == MenuAction.InitAction) {
+ initActionObserved = true
+ }
+
+ next(action)
+ }
+
+ val store = MenuStore(
+ initialState = MenuState(),
+ middleware = listOf(testMiddleware),
+ )
+ store.waitUntilIdle()
+ assertTrue(initActionObserved)
+ }
+
+ @Test
+ fun `GIVEN a browser menu state update WHEN copying the browser menu state THEN return the updated browser menu state`() {
+ val selectedTab = TabSessionState(
+ id = "tabId1",
+ content = ContentState(
+ url = "www.mozilla.com",
+ ),
+ )
+ val firefoxTab = TabSessionState(
+ id = "tabId2",
+ content = ContentState(
+ url = "www.firefox.com",
+ ),
+ )
+ val state = MenuState(
+ browserMenuState = BrowserMenuState(
+ selectedTab = selectedTab,
+ bookmarkState = BookmarkState(),
+ ),
+ )
+
+ assertEquals(selectedTab, state.browserMenuState!!.selectedTab)
+ assertNull(state.browserMenuState!!.bookmarkState.guid)
+ assertFalse(state.browserMenuState!!.bookmarkState.isBookmarked)
+
+ var newState = state.copyWithBrowserMenuState {
+ it.copy(selectedTab = firefoxTab)
+ }
+
+ assertEquals(firefoxTab, newState.browserMenuState!!.selectedTab)
+ assertNull(state.browserMenuState!!.bookmarkState.guid)
+ assertFalse(state.browserMenuState!!.bookmarkState.isBookmarked)
+
+ val bookmarkState = BookmarkState(guid = "id", isBookmarked = true)
+ newState = newState.copyWithBrowserMenuState {
+ it.copy(bookmarkState = bookmarkState)
+ }
+
+ assertEquals(firefoxTab, newState.browserMenuState!!.selectedTab)
+ assertEquals(bookmarkState, newState.browserMenuState!!.bookmarkState)
+ }
+
+ @Test
+ fun `WHEN add bookmark action is dispatched THEN state is not updated`() = runTest {
+ val initialState = MenuState(
+ browserMenuState = BrowserMenuState(
+ selectedTab = TabSessionState(
+ id = "tabId",
+ content = ContentState(
+ url = "www.google.com",
+ ),
+ ),
+ bookmarkState = BookmarkState(),
+ ),
+ )
+ val store = MenuStore(initialState = initialState)
+
+ store.dispatch(MenuAction.AddBookmark).join()
- @Before
- fun setup() {
- state = MenuState()
- store = MenuStore(initialState = state)
+ assertEquals(initialState, store.state)
}
@Test
- fun `WHEN update bookmarked action is dispatched THEN bookmarked state is updated`() = runTest {
- assertFalse(store.state.isBookmarked)
+ fun `WHEN update bookmark state action is dispatched THEN bookmark state is updated`() = runTest {
+ val initialState = MenuState(
+ browserMenuState = BrowserMenuState(
+ selectedTab = TabSessionState(
+ id = "tabId",
+ content = ContentState(
+ url = "www.google.com",
+ ),
+ ),
+ bookmarkState = BookmarkState(),
+ ),
+ )
+ val store = MenuStore(initialState = initialState)
- store.dispatch(MenuAction.UpdateBookmarked(isBookmarked = true)).join()
- assertTrue(store.state.isBookmarked)
+ assertNotNull(store.state.browserMenuState)
+ assertNull(store.state.browserMenuState!!.bookmarkState.guid)
+ assertFalse(store.state.browserMenuState!!.bookmarkState.isBookmarked)
- store.dispatch(MenuAction.UpdateBookmarked(isBookmarked = false)).join()
- assertFalse(store.state.isBookmarked)
+ val newBookmarkState = BookmarkState(
+ guid = "id1",
+ isBookmarked = true,
+ )
+ store.dispatch(MenuAction.UpdateBookmarkState(bookmarkState = newBookmarkState)).join()
+ assertEquals(newBookmarkState, store.state.browserMenuState!!.bookmarkState)
}
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/fake/FakeBookmarksStorage.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/fake/FakeBookmarksStorage.kt
new file mode 100644
index 0000000000..f51dd3b3b8
--- /dev/null
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/fake/FakeBookmarksStorage.kt
@@ -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/. */
+
+package org.mozilla.fenix.components.menu.fake
+
+import mozilla.components.concept.storage.BookmarkInfo
+import mozilla.components.concept.storage.BookmarkNode
+import mozilla.components.concept.storage.BookmarkNodeType
+import mozilla.components.concept.storage.BookmarksStorage
+import java.util.UUID
+
+class FakeBookmarksStorage() : BookmarksStorage {
+ private val bookmarkMap: HashMap<String, BookmarkNode> = hashMapOf()
+
+ override suspend fun warmUp() {
+ throw NotImplementedError()
+ }
+
+ override suspend fun getTree(guid: String, recursive: Boolean): BookmarkNode? {
+ throw NotImplementedError()
+ }
+
+ override suspend fun getBookmark(guid: String): BookmarkNode? {
+ throw NotImplementedError()
+ }
+
+ override suspend fun getBookmarksWithUrl(url: String): List<BookmarkNode> {
+ return bookmarkMap.values.filter { it.url == url }
+ }
+
+ override suspend fun getRecentBookmarks(
+ limit: Int,
+ maxAge: Long?,
+ currentTime: Long,
+ ): List<BookmarkNode> {
+ throw NotImplementedError()
+ }
+
+ override suspend fun searchBookmarks(query: String, limit: Int): List<BookmarkNode> {
+ throw NotImplementedError()
+ }
+
+ override suspend fun countBookmarksInTrees(guids: List<String>): UInt {
+ throw NotImplementedError()
+ }
+
+ override suspend fun addItem(
+ parentGuid: String,
+ url: String,
+ title: String,
+ position: UInt?,
+ ): String {
+ val id = UUID.randomUUID().toString()
+ bookmarkMap[id] =
+ BookmarkNode(
+ type = BookmarkNodeType.ITEM,
+ guid = id,
+ parentGuid = parentGuid,
+ position = position,
+ title = title,
+ url = url,
+ dateAdded = 0,
+ children = null,
+ )
+ return id
+ }
+
+ override suspend fun addFolder(parentGuid: String, title: String, position: UInt?): String {
+ throw NotImplementedError()
+ }
+
+ override suspend fun addSeparator(parentGuid: String, position: UInt?): String {
+ throw NotImplementedError()
+ }
+
+ override suspend fun updateNode(guid: String, info: BookmarkInfo) {
+ throw NotImplementedError()
+ }
+
+ override suspend fun deleteNode(guid: String): Boolean {
+ throw NotImplementedError()
+ }
+
+ override suspend fun runMaintenance(dbSizeLimit: UInt) {
+ throw NotImplementedError()
+ }
+
+ override fun cleanup() {
+ throw NotImplementedError()
+ }
+
+ override fun cancelWrites() {
+ throw NotImplementedError()
+ }
+
+ override fun cancelReads() {
+ throw NotImplementedError()
+ }
+
+ override fun cancelReads(nextQuery: String) {
+ throw NotImplementedError()
+ }
+}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarControllerTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarControllerTest.kt
index 8b1819ac1c..3289257fbc 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarControllerTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarControllerTest.kt
@@ -454,9 +454,7 @@ class DefaultBrowserToolbarControllerTest {
verify {
navController.navigate(
- BrowserFragmentDirections.actionBrowserFragmentToTranslationsDialogFragment(
- sessionId = "1",
- ),
+ BrowserFragmentDirections.actionBrowserFragmentToTranslationsDialogFragment(),
)
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt
index 781cb8b3cf..3a5a4a303b 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt
@@ -6,6 +6,7 @@ package org.mozilla.fenix.components.toolbar
import android.content.Intent
import android.view.ViewGroup
+import androidx.fragment.app.Fragment
import androidx.navigation.NavController
import io.mockk.MockKAnnotations
import io.mockk.Runs
@@ -22,7 +23,6 @@ import io.mockk.unmockkObject
import io.mockk.unmockkStatic
import io.mockk.verify
import kotlinx.coroutines.CoroutineScope
-import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.test.runTest
import mozilla.appservices.places.BookmarkRoot
import mozilla.components.browser.state.action.CustomTabListAction
@@ -79,7 +79,6 @@ import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
import org.mozilla.fenix.settings.deletebrowsingdata.deleteAndQuit
import org.mozilla.fenix.utils.Settings
-@OptIn(ExperimentalCoroutinesApi::class)
@RunWith(FenixRobolectricTestRunner::class)
class DefaultBrowserToolbarMenuControllerTest {
@@ -91,6 +90,8 @@ class DefaultBrowserToolbarMenuControllerTest {
@MockK private lateinit var snackbarParent: ViewGroup
+ @RelaxedMockK private lateinit var fragment: Fragment
+
@RelaxedMockK private lateinit var activity: HomeActivity
@RelaxedMockK private lateinit var navController: NavController
@@ -836,9 +837,7 @@ class DefaultBrowserToolbarMenuControllerTest {
verify {
navController.navigate(
directionsEq(
- BrowserFragmentDirections.actionBrowserFragmentToTranslationsDialogFragment(
- sessionId = selectedTab.id,
- ),
+ BrowserFragmentDirections.actionBrowserFragmentToTranslationsDialogFragment(),
),
)
}
@@ -855,6 +854,7 @@ class DefaultBrowserToolbarMenuControllerTest {
findInPageLauncher: () -> Unit = { },
bookmarkTapped: (String, String) -> Unit = { _, _ -> },
) = DefaultBrowserToolbarMenuController(
+ fragment = fragment,
store = store,
activity = activity,
navController = navController,
@@ -871,7 +871,8 @@ class DefaultBrowserToolbarMenuControllerTest {
sessionFeature = sessionFeatureWrapper,
topSitesStorage = topSitesStorage,
pinnedSiteStorage = pinnedSiteStorage,
- browserStore = browserStore,
+ onShowPinVerification = {},
+ onBiometricAuthenticationSuccessful = {},
).apply {
ioScope = scope
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/BitmapTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/BitmapTest.kt
new file mode 100644
index 0000000000..865ec4a031
--- /dev/null
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/BitmapTest.kt
@@ -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/. */
+
+package org.mozilla.fenix.ext
+
+import android.view.View
+import io.mockk.every
+import io.mockk.mockk
+import org.junit.Assert.assertEquals
+import org.junit.Test
+
+class BitmapTest {
+ @Test
+ fun `WHEN keyboard is considered closed THEN safeHeight returns the same value as the given view height`() {
+ val view = mockk<View>(relaxed = true) {
+ every { height } returns 100
+ every { getKeyboardHeight() } returns 0
+ }
+ assertEquals(view.height, view.safeHeight())
+ }
+
+ @Test
+ fun `WHEN keyboard is considered open THEN safeHeight returns the given view height plus the keyboard height`() {
+ val view = mockk<View>(relaxed = true) {
+ every { height } returns 100
+ every { getKeyboardHeight() } returns 50
+ }
+
+ val expected = view.height.plus(view.getKeyboardHeight())
+ assertEquals(expected, view.safeHeight())
+ }
+}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/ViewTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/ViewTest.kt
index a0a8df86ac..f259656026 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/ViewTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/ViewTest.kt
@@ -177,4 +177,26 @@ class ViewTest {
assertEquals(250, outRect.right)
assertEquals(450, outRect.bottom)
}
+
+ @Test
+ fun `getKeyboardHeight returns the keyboard height when keyboard is considered open`() {
+ val windowVisibleDisplayFrame = Rect(0, 0, 500, 1000)
+ val keyboardHeight = 500
+ every { view.getWindowVisibleDisplayFrame() } returns windowVisibleDisplayFrame
+ every { view.rootView.height } returns windowVisibleDisplayFrame.bottom.plus(keyboardHeight)
+ every { view.rootWindowInsets } returns null
+
+ assertEquals(keyboardHeight, view.getKeyboardHeight())
+ }
+
+ @Test
+ fun `getKeyboardHeight returns zero when keyboard is considered closed`() {
+ val windowVisibleDisplayFrame = Rect(0, 0, 500, 1000)
+ val keyboardHeight = 0
+ every { view.getWindowVisibleDisplayFrame() } returns windowVisibleDisplayFrame
+ every { view.rootView.height } returns windowVisibleDisplayFrame.bottom.plus(keyboardHeight)
+ every { view.rootWindowInsets } returns null
+
+ assertEquals(keyboardHeight, view.getKeyboardHeight())
+ }
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/DefaultSessionControlControllerTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/DefaultSessionControlControllerTest.kt
index 9061bd669d..dae78a49fe 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/DefaultSessionControlControllerTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/DefaultSessionControlControllerTest.kt
@@ -46,9 +46,9 @@ import org.junit.runner.RunWith
import org.mozilla.fenix.BrowserDirection
import org.mozilla.fenix.GleanMetrics.Collections
import org.mozilla.fenix.GleanMetrics.Events
+import org.mozilla.fenix.GleanMetrics.HomeBookmarks
import org.mozilla.fenix.GleanMetrics.HomeScreen
import org.mozilla.fenix.GleanMetrics.Pings
-import org.mozilla.fenix.GleanMetrics.RecentBookmarks
import org.mozilla.fenix.GleanMetrics.RecentTabs
import org.mozilla.fenix.GleanMetrics.TopSites
import org.mozilla.fenix.HomeActivity
@@ -62,7 +62,7 @@ import org.mozilla.fenix.components.appstate.AppState
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.recenttabs.RecentTab
import org.mozilla.fenix.home.sessioncontrol.DefaultSessionControlController
import org.mozilla.fenix.messaging.MessageController
@@ -142,7 +142,7 @@ class DefaultSessionControlControllerTest {
topSites = emptyList(),
showCollectionPlaceholder = true,
recentTabs = emptyList(),
- recentBookmarks = emptyList(),
+ bookmarks = emptyList(),
)
every { navController.currentDestination } returns mockk {
@@ -152,7 +152,6 @@ class DefaultSessionControlControllerTest {
every { activity.settings() } returns settings
every { activity.components.analytics } returns analytics
every { activity.filesDir } returns filesDir
- every { filesDir.path } returns "/test"
}
@Test
@@ -1187,28 +1186,28 @@ class DefaultSessionControlControllerTest {
}
@Test
- fun `WHEN handleReportSessionMetrics is called AND there are zero recent bookmarks THEN report Event#RecentBookmarkCount(0)`() {
- every { appState.recentBookmarks } returns emptyList()
+ fun `WHEN handleReportSessionMetrics is called AND there are zero bookmarks THEN report Event#BookmarkCount(0)`() {
+ every { appState.bookmarks } returns emptyList()
every { appState.recentTabs } returns emptyList()
- assertNull(RecentBookmarks.recentBookmarksCount.testGetValue())
+ assertNull(HomeBookmarks.bookmarksCount.testGetValue())
createController().handleReportSessionMetrics(appState)
- assertNotNull(RecentBookmarks.recentBookmarksCount.testGetValue())
- assertEquals(0L, RecentBookmarks.recentBookmarksCount.testGetValue())
+ assertNotNull(HomeBookmarks.bookmarksCount.testGetValue())
+ assertEquals(0L, HomeBookmarks.bookmarksCount.testGetValue())
}
@Test
- fun `WHEN handleReportSessionMetrics is called AND there is at least one recent bookmark THEN report Event#RecentBookmarkCount(1)`() {
- val recentBookmark: RecentBookmark = mockk(relaxed = true)
- every { appState.recentBookmarks } returns listOf(recentBookmark)
+ fun `WHEN handleReportSessionMetrics is called AND there is at least one bookmark THEN report Event#BookmarkCount(1)`() {
+ val bookmark: Bookmark = mockk(relaxed = true)
+ every { appState.bookmarks } returns listOf(bookmark)
every { appState.recentTabs } returns emptyList()
- assertNull(RecentBookmarks.recentBookmarksCount.testGetValue())
+ assertNull(HomeBookmarks.bookmarksCount.testGetValue())
createController().handleReportSessionMetrics(appState)
- assertNotNull(RecentBookmarks.recentBookmarksCount.testGetValue())
- assertEquals(1L, RecentBookmarks.recentBookmarksCount.testGetValue())
+ assertNotNull(HomeBookmarks.bookmarksCount.testGetValue())
+ assertEquals(1L, HomeBookmarks.bookmarksCount.testGetValue())
}
@Test
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/HomeMenuViewTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/HomeMenuViewTest.kt
index ba7e07e352..3f2e32285a 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/HomeMenuViewTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/HomeMenuViewTest.kt
@@ -47,6 +47,7 @@ class HomeMenuViewTest {
private lateinit var view: View
private lateinit var lifecycleOwner: LifecycleOwner
private lateinit var homeActivity: HomeActivity
+ private lateinit var homeFragment: HomeFragment
private lateinit var navController: NavController
private lateinit var menuButton: MenuButton
private lateinit var homeMenuView: HomeMenuView
@@ -56,6 +57,7 @@ class HomeMenuViewTest {
view = mockk(relaxed = true)
lifecycleOwner = mockk(relaxed = true)
homeActivity = mockk(relaxed = true)
+ homeFragment = mockk(relaxed = true)
navController = mockk(relaxed = true)
menuButton = spyk(MenuButton(testContext))
@@ -66,7 +68,10 @@ class HomeMenuViewTest {
lifecycleOwner = lifecycleOwner,
homeActivity = homeActivity,
navController = navController,
+ homeFragment = homeFragment,
menuButton = WeakReference(menuButton),
+ onShowPinVerification = {},
+ onBiometricAuthenticationSuccessful = {},
)
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/SessionControlInteractorTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/SessionControlInteractorTest.kt
index 78cc69b01b..2020c894c0 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/SessionControlInteractorTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/SessionControlInteractorTest.kt
@@ -15,11 +15,11 @@ import org.junit.Before
import org.junit.Test
import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.components.appstate.AppState
+import org.mozilla.fenix.home.bookmarks.Bookmark
+import org.mozilla.fenix.home.bookmarks.controller.BookmarksController
import org.mozilla.fenix.home.pocket.PocketRecommendedStoriesCategory
import org.mozilla.fenix.home.pocket.PocketStoriesController
import org.mozilla.fenix.home.privatebrowsing.controller.PrivateBrowsingController
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
-import org.mozilla.fenix.home.recentbookmarks.controller.RecentBookmarksController
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTab
import org.mozilla.fenix.home.recentsyncedtabs.controller.RecentSyncedTabController
import org.mozilla.fenix.home.recenttabs.controller.RecentTabController
@@ -35,7 +35,7 @@ class SessionControlInteractorTest {
private val controller: DefaultSessionControlController = mockk(relaxed = true)
private val recentTabController: RecentTabController = mockk(relaxed = true)
private val recentSyncedTabController: RecentSyncedTabController = mockk(relaxed = true)
- private val recentBookmarksController: RecentBookmarksController = mockk(relaxed = true)
+ private val bookmarksController: BookmarksController = mockk(relaxed = true)
private val pocketStoriesController: PocketStoriesController = mockk(relaxed = true)
private val privateBrowsingController: PrivateBrowsingController = mockk(relaxed = true)
private val searchSelectorController: SearchSelectorController = mockk(relaxed = true)
@@ -52,7 +52,7 @@ class SessionControlInteractorTest {
controller,
recentTabController,
recentSyncedTabController,
- recentBookmarksController,
+ bookmarksController,
recentVisitsController,
pocketStoriesController,
privateBrowsingController,
@@ -195,11 +195,11 @@ class SessionControlInteractorTest {
}
@Test
- fun `WHEN a recently saved bookmark is clicked THEN the selected bookmark is handled`() {
- val bookmark = RecentBookmark()
+ fun `WHEN a bookmark is clicked THEN the selected bookmark is handled`() {
+ val bookmark = Bookmark()
- interactor.onRecentBookmarkClicked(bookmark)
- verify { recentBookmarksController.handleBookmarkClicked(bookmark) }
+ interactor.onBookmarkClicked(bookmark)
+ verify { bookmarksController.handleBookmarkClicked(bookmark) }
}
@Test
@@ -209,9 +209,9 @@ class SessionControlInteractorTest {
}
@Test
- fun `WHEN Show All recently saved bookmarks button is clicked THEN the click is handled`() {
+ fun `WHEN Show All bookmarks button is clicked THEN the click is handled`() {
interactor.onShowAllBookmarksClicked()
- verify { recentBookmarksController.handleShowAllBookmarksClicked() }
+ verify { bookmarksController.handleShowAllBookmarksClicked() }
}
@Test
@@ -300,7 +300,7 @@ class SessionControlInteractorTest {
@Test
fun reportSessionMetrics() {
val appState: AppState = mockk(relaxed = true)
- every { appState.recentBookmarks } returns emptyList()
+ every { appState.bookmarks } returns emptyList()
interactor.reportSessionMetrics(appState)
verify { controller.handleReportSessionMetrics(appState) }
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistHandlerTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistHandlerTest.kt
index c41002088e..d0a0167aea 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistHandlerTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistHandlerTest.kt
@@ -15,7 +15,7 @@ import org.junit.Before
import org.junit.Test
import org.junit.runner.RunWith
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTab
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTabState
import org.mozilla.fenix.home.recenttabs.RecentTab
@@ -47,7 +47,7 @@ class BlocklistHandlerTest {
@Test
fun `GIVEN bookmark is not in blocklist THEN will not be filtered`() {
- val bookmarks = listOf(RecentBookmark(url = "test"))
+ val bookmarks = listOf(Bookmark(url = "test"))
every { mockSettings.homescreenBlocklist } returns setOf()
val filtered = with(blocklistHandler) {
@@ -60,7 +60,7 @@ class BlocklistHandlerTest {
@Test
fun `GIVEN bookmark is in blocklist THEN will be filtered`() {
val blockedUrl = "test"
- val bookmarks = listOf(RecentBookmark(url = blockedUrl))
+ val bookmarks = listOf(Bookmark(url = blockedUrl))
every { mockSettings.homescreenBlocklist } returns setOf(blockedUrl.stripAndHash())
val filtered = with(blocklistHandler) {
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistMiddlewareTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistMiddlewareTest.kt
index 3339df1ee9..44dd6b385f 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistMiddlewareTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/blocklist/BlocklistMiddlewareTest.kt
@@ -19,7 +19,7 @@ import org.mozilla.fenix.components.AppStore
import org.mozilla.fenix.components.appstate.AppAction
import org.mozilla.fenix.components.appstate.AppState
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTab
import org.mozilla.fenix.home.recentsyncedtabs.RecentSyncedTabState
import org.mozilla.fenix.home.recenttabs.RecentTab
@@ -32,7 +32,7 @@ class BlocklistMiddlewareTest {
@Test
fun `GIVEN empty blocklist WHEN action intercepted THEN unchanged by middleware`() {
- val updatedBookmark = RecentBookmark(url = "https://www.mozilla.org/")
+ val updatedBookmark = Bookmark(url = "https://www.mozilla.org/")
every { mockSettings.homescreenBlocklist } returns setOf()
val middleware = BlocklistMiddleware(blocklistHandler)
@@ -48,18 +48,18 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = appStore.state.recentTabs,
- recentBookmarks = listOf(updatedBookmark),
+ bookmarks = listOf(updatedBookmark),
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertEquals(updatedBookmark, appStore.state.recentBookmarks[0])
+ assertEquals(updatedBookmark, appStore.state.bookmarks[0])
}
@Test
fun `GIVEN non-empty blocklist WHEN action intercepted with no matching elements THEN unchanged by middleware`() {
- val updatedBookmark = RecentBookmark(url = "https://www.mozilla.org/")
+ val updatedBookmark = Bookmark(url = "https://www.mozilla.org/")
every { mockSettings.homescreenBlocklist } returns setOf("https://www.github.org/".stripAndHash())
val middleware = BlocklistMiddleware(blocklistHandler)
@@ -75,18 +75,18 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = appStore.state.recentTabs,
- recentBookmarks = listOf(updatedBookmark),
+ bookmarks = listOf(updatedBookmark),
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertEquals(updatedBookmark, appStore.state.recentBookmarks[0])
+ assertEquals(updatedBookmark, appStore.state.bookmarks[0])
}
@Test
fun `GIVEN non-empty blocklist with specific pages WHEN action intercepted with matching host THEN unchanged by middleware`() {
- val updatedBookmark = RecentBookmark(url = "https://github.com/")
+ val updatedBookmark = Bookmark(url = "https://github.com/")
every { mockSettings.homescreenBlocklist } returns setOf("https://github.com/mozilla-mobile/fenix".stripAndHash())
val middleware = BlocklistMiddleware(blocklistHandler)
@@ -102,18 +102,18 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = appStore.state.recentTabs,
- recentBookmarks = listOf(updatedBookmark),
+ bookmarks = listOf(updatedBookmark),
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertEquals(updatedBookmark, appStore.state.recentBookmarks[0])
+ assertEquals(updatedBookmark, appStore.state.bookmarks[0])
}
@Test
fun `GIVEN non-empty blocklist WHEN action intercepted with matching elements THEN filtered by middleware`() {
- val updatedBookmark = RecentBookmark(url = "https://www.mozilla.org/")
+ val updatedBookmark = Bookmark(url = "https://www.mozilla.org/")
every { mockSettings.homescreenBlocklist } returns setOf("https://www.mozilla.org/".stripAndHash())
val middleware = BlocklistMiddleware(blocklistHandler)
@@ -129,19 +129,19 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = appStore.state.recentTabs,
- recentBookmarks = listOf(updatedBookmark),
+ bookmarks = listOf(updatedBookmark),
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertTrue(appStore.state.recentBookmarks.isEmpty())
+ assertTrue(appStore.state.bookmarks.isEmpty())
}
@Test
fun `GIVEN non-empty blocklist WHEN action intercepted with matching elements THEN all relevant sections filtered by middleware`() {
val blockedUrl = "https://www.mozilla.org/"
- val updatedBookmarks = listOf(RecentBookmark(url = blockedUrl))
+ val updatedBookmarks = listOf(Bookmark(url = blockedUrl))
val updatedRecentTabs = listOf(RecentTab.Tab(createTab(url = blockedUrl)))
every { mockSettings.homescreenBlocklist } returns setOf(blockedUrl.stripAndHash())
@@ -158,13 +158,13 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = updatedRecentTabs,
- recentBookmarks = updatedBookmarks,
+ bookmarks = updatedBookmarks,
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertTrue(appStore.state.recentBookmarks.isEmpty())
+ assertTrue(appStore.state.bookmarks.isEmpty())
assertTrue(appStore.state.recentTabs.isEmpty())
}
@@ -172,9 +172,9 @@ class BlocklistMiddlewareTest {
fun `GIVEN non-empty blocklist WHEN action intercepted with matching elements THEN only matching urls removed`() {
val blockedUrl = "https://www.mozilla.org/"
val unblockedUrl = "https://www.github.org/"
- val unblockedBookmark = RecentBookmark(unblockedUrl)
+ val unblockedBookmark = Bookmark(unblockedUrl)
val updatedBookmarks = listOf(
- RecentBookmark(url = blockedUrl),
+ Bookmark(url = blockedUrl),
unblockedBookmark,
)
val unblockedRecentTab = RecentTab.Tab(createTab(url = unblockedUrl))
@@ -196,13 +196,13 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = updatedRecentTabs,
- recentBookmarks = updatedBookmarks,
+ bookmarks = updatedBookmarks,
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertEquals(unblockedBookmark, appStore.state.recentBookmarks[0])
+ assertEquals(unblockedBookmark, appStore.state.bookmarks[0])
assertEquals(unblockedRecentTab, appStore.state.recentTabs[0])
}
@@ -210,30 +210,30 @@ class BlocklistMiddlewareTest {
fun `WHEN remove action intercepted THEN hashed url added to blocklist and Change action dispatched`() {
val captureMiddleware = CaptureActionsMiddleware<AppState, AppAction>()
val removedUrl = "https://www.mozilla.org/"
- val removedBookmark = RecentBookmark(url = removedUrl)
+ val removedBookmark = Bookmark(url = removedUrl)
val updateSlot = slot<Set<String>>()
every { mockSettings.homescreenBlocklist } returns setOf() andThen setOf(removedUrl.stripAndHash())
every { mockSettings.homescreenBlocklist = capture(updateSlot) } returns Unit
val middleware = BlocklistMiddleware(blocklistHandler)
val appStore = AppStore(
- AppState(recentBookmarks = listOf(removedBookmark)),
+ AppState(bookmarks = listOf(removedBookmark)),
middlewares = listOf(middleware, captureMiddleware),
)
appStore.dispatch(
- AppAction.RemoveRecentBookmark(removedBookmark),
+ AppAction.RemoveBookmark(removedBookmark),
).joinBlocking()
val capturedAction = captureMiddleware.findFirstAction(AppAction.Change::class)
- assertEquals(emptyList<RecentBookmark>(), capturedAction.recentBookmarks)
+ assertEquals(emptyList<Bookmark>(), capturedAction.bookmarks)
assertEquals(setOf(removedUrl.stripAndHash()), updateSlot.captured)
}
@Test
fun `WHEN urls are compared to blocklist THEN protocols are stripped`() {
val host = "www.mozilla.org/"
- val updatedBookmark = RecentBookmark(url = "http://$host")
+ val updatedBookmark = Bookmark(url = "http://$host")
every { mockSettings.homescreenBlocklist } returns setOf("https://$host".stripAndHash())
val middleware = BlocklistMiddleware(blocklistHandler)
@@ -249,19 +249,19 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = appStore.state.recentTabs,
- recentBookmarks = listOf(updatedBookmark),
+ bookmarks = listOf(updatedBookmark),
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertTrue(appStore.state.recentBookmarks.isEmpty())
+ assertTrue(appStore.state.bookmarks.isEmpty())
}
@Test
fun `WHEN urls are compared to blocklist THEN common subdomains are stripped`() {
val host = "mozilla.org/"
- val updatedBookmark = RecentBookmark(url = host)
+ val updatedBookmark = Bookmark(url = host)
every { mockSettings.homescreenBlocklist } returns setOf(host.stripAndHash())
val middleware = BlocklistMiddleware(blocklistHandler)
@@ -277,19 +277,19 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = appStore.state.recentTabs,
- recentBookmarks = listOf(updatedBookmark),
+ bookmarks = listOf(updatedBookmark),
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertTrue(appStore.state.recentBookmarks.isEmpty())
+ assertTrue(appStore.state.bookmarks.isEmpty())
}
@Test
fun `WHEN urls are compared to blocklist THEN trailing slashes are stripped`() {
val host = "www.mozilla.org"
- val updatedBookmark = RecentBookmark(url = "http://$host/")
+ val updatedBookmark = Bookmark(url = "http://$host/")
every { mockSettings.homescreenBlocklist } returns setOf("https://$host".stripAndHash())
val middleware = BlocklistMiddleware(blocklistHandler)
@@ -305,13 +305,13 @@ class BlocklistMiddlewareTest {
collections = appStore.state.collections,
showCollectionPlaceholder = appStore.state.showCollectionPlaceholder,
recentTabs = appStore.state.recentTabs,
- recentBookmarks = listOf(updatedBookmark),
+ bookmarks = listOf(updatedBookmark),
recentHistory = appStore.state.recentHistory,
recentSyncedTabState = appStore.state.recentSyncedTabState,
),
).joinBlocking()
- assertTrue(appStore.state.recentBookmarks.isEmpty())
+ assertTrue(appStore.state.bookmarks.isEmpty())
}
@Test
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentbookmarks/RecentBookmarksFeatureTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/bookmarks/BookmarksFeatureTest.kt
index 74553b9b5b..8709b7601b 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentbookmarks/RecentBookmarksFeatureTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/bookmarks/BookmarksFeatureTest.kt
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks
+package org.mozilla.fenix.home.bookmarks
import io.mockk.coEvery
import io.mockk.coVerify
@@ -24,12 +24,12 @@ import org.mozilla.fenix.components.appstate.AppState
import org.mozilla.fenix.components.bookmarks.BookmarksUseCase
@OptIn(ExperimentalCoroutinesApi::class)
-class RecentBookmarksFeatureTest {
+class BookmarksFeatureTest {
private val middleware = CaptureActionsMiddleware<AppState, AppAction>()
private val appStore = AppStore(middlewares = listOf(middleware))
private val bookmarksUseCases: BookmarksUseCase = mockk(relaxed = true)
- private val bookmark = RecentBookmark(
+ private val bookmark = Bookmark(
title = null,
url = "https://www.example.com",
previewImageUrl = null,
@@ -46,16 +46,16 @@ class RecentBookmarksFeatureTest {
}
@Test
- fun `GIVEN no recent bookmarks WHEN feature starts THEN fetch bookmarks and notify store`() =
+ fun `GIVEN no bookmarks WHEN feature starts THEN fetch bookmarks and notify store`() =
runTestOnMain {
- val feature = RecentBookmarksFeature(
+ val feature = BookmarksFeature(
appStore,
bookmarksUseCases,
scope,
testDispatcher,
)
- assertEquals(emptyList<BookmarkNode>(), appStore.state.recentBookmarks)
+ assertEquals(emptyList<BookmarkNode>(), appStore.state.bookmarks)
feature.start()
@@ -66,8 +66,8 @@ class RecentBookmarksFeatureTest {
bookmarksUseCases.retrieveRecentBookmarks()
}
- middleware.assertLastAction(AppAction.RecentBookmarksChange::class) {
- assertEquals(listOf(bookmark), it.recentBookmarks)
+ middleware.assertLastAction(AppAction.BookmarksChange::class) {
+ assertEquals(listOf(bookmark), it.bookmarks)
}
}
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentbookmarks/DefaultRecentBookmarksControllerTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/bookmarks/DefaultBookmarksControllerTest.kt
index 6f03ddbf9a..e5fced4130 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentbookmarks/DefaultRecentBookmarksControllerTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/bookmarks/DefaultBookmarksControllerTest.kt
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-package org.mozilla.fenix.home.recentbookmarks
+package org.mozilla.fenix.home.bookmarks
import androidx.navigation.NavController
import io.mockk.Runs
@@ -28,15 +28,15 @@ import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
import org.mozilla.fenix.BrowserDirection
-import org.mozilla.fenix.GleanMetrics.RecentBookmarks
+import org.mozilla.fenix.GleanMetrics.HomeBookmarks
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
import org.mozilla.fenix.home.HomeFragmentDirections
-import org.mozilla.fenix.home.recentbookmarks.controller.DefaultRecentBookmarksController
+import org.mozilla.fenix.home.bookmarks.controller.DefaultBookmarksController
@RunWith(FenixRobolectricTestRunner::class)
-class DefaultRecentBookmarksControllerTest {
+class DefaultBookmarksControllerTest {
@get:Rule
val gleanTestRule = GleanTestRule(testContext)
@@ -49,7 +49,7 @@ class DefaultRecentBookmarksControllerTest {
private val selectTabUseCase: TabsUseCases = mockk(relaxed = true)
private val browserStore: BrowserStore = mockk(relaxed = true)
- private lateinit var controller: DefaultRecentBookmarksController
+ private lateinit var controller: DefaultBookmarksController
@Before
fun setup() {
@@ -57,7 +57,7 @@ class DefaultRecentBookmarksControllerTest {
every { browserStore.state.tabs }.returns(emptyList())
controller = spyk(
- DefaultRecentBookmarksController(
+ DefaultBookmarksController(
activity = activity,
navController = navController,
appStore = mockk(),
@@ -68,10 +68,10 @@ class DefaultRecentBookmarksControllerTest {
}
@Test
- fun `GIVEN no tabs WHEN a recently saved bookmark is clicked THEN the selected bookmark is opened in a new tab`() {
- assertNull(RecentBookmarks.bookmarkClicked.testGetValue())
+ fun `GIVEN no tabs WHEN a bookmark is clicked THEN the selected bookmark is opened in a new tab`() {
+ assertNull(HomeBookmarks.bookmarkClicked.testGetValue())
- val bookmark = RecentBookmark(title = null, url = "https://www.example.com")
+ val bookmark = Bookmark(title = null, url = "https://www.example.com")
controller.handleBookmarkClicked(bookmark)
verify {
@@ -82,17 +82,17 @@ class DefaultRecentBookmarksControllerTest {
from = BrowserDirection.FromHome,
)
}
- assertNotNull(RecentBookmarks.bookmarkClicked.testGetValue())
+ assertNotNull(HomeBookmarks.bookmarkClicked.testGetValue())
}
@Test
- fun `GIVEN no matching tabs WHEN a recently saved bookmark is clicked THEN the selected bookmark is opened in a new tab`() {
- assertNull(RecentBookmarks.bookmarkClicked.testGetValue())
+ fun `GIVEN no matching tabs WHEN a bookmark is clicked THEN the selected bookmark is opened in a new tab`() {
+ assertNull(HomeBookmarks.bookmarkClicked.testGetValue())
val testTab = createTab("https://www.not_example.com")
every { browserStore.state.tabs }.returns(listOf(testTab))
- val bookmark = RecentBookmark(title = null, url = "https://www.example.com")
+ val bookmark = Bookmark(title = null, url = "https://www.example.com")
controller.handleBookmarkClicked(bookmark)
verify {
@@ -103,30 +103,30 @@ class DefaultRecentBookmarksControllerTest {
from = BrowserDirection.FromHome,
)
}
- assertNotNull(RecentBookmarks.bookmarkClicked.testGetValue())
+ assertNotNull(HomeBookmarks.bookmarkClicked.testGetValue())
}
@Test
- fun `GIVEN matching tab WHEN a recently saved bookmark is clicked THEN the existing tab is opened`() {
- assertNull(RecentBookmarks.bookmarkClicked.testGetValue())
+ fun `GIVEN matching tab WHEN a bookmark is clicked THEN the existing tab is opened`() {
+ assertNull(HomeBookmarks.bookmarkClicked.testGetValue())
val testUrl = "https://www.example.com"
val testTab = createTab(testUrl)
every { browserStore.state.tabs }.returns(listOf(testTab))
- val bookmark = RecentBookmark(title = null, url = testUrl)
+ val bookmark = Bookmark(title = null, url = testUrl)
controller.handleBookmarkClicked(bookmark)
verify {
selectTabUseCase.invoke(testTab.id)
navController.navigate(R.id.browserFragment)
}
- assertNotNull(RecentBookmarks.bookmarkClicked.testGetValue())
+ assertNotNull(HomeBookmarks.bookmarkClicked.testGetValue())
}
@Test
- fun `WHEN show all recently saved bookmark is clicked THEN the bookmarks root is opened`() = runTestOnMain {
- assertNull(RecentBookmarks.showAllBookmarks.testGetValue())
+ fun `WHEN show all bookmarks is clicked THEN the bookmarks root is opened`() = runTestOnMain {
+ assertNull(HomeBookmarks.showAllBookmarks.testGetValue())
controller.handleShowAllBookmarksClicked()
@@ -134,12 +134,12 @@ class DefaultRecentBookmarksControllerTest {
verify {
navController.navigate(directions)
}
- assertNotNull(RecentBookmarks.showAllBookmarks.testGetValue())
+ assertNotNull(HomeBookmarks.showAllBookmarks.testGetValue())
}
@Test
- fun `WHEN show all is clicked from behind search dialog THEN open bookmarks root`() {
- assertNull(RecentBookmarks.showAllBookmarks.testGetValue())
+ fun `WHEN show all bppkmarks is clicked from behind search dialog THEN open bookmarks root`() {
+ assertNull(HomeBookmarks.showAllBookmarks.testGetValue())
controller.handleShowAllBookmarksClicked()
@@ -148,6 +148,6 @@ class DefaultRecentBookmarksControllerTest {
verify {
navController.navigate(directions)
}
- assertNotNull(RecentBookmarks.showAllBookmarks.testGetValue())
+ assertNotNull(HomeBookmarks.showAllBookmarks.testGetValue())
}
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/intent/OpenRecentlyClosedIntentProcessorTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/intent/OpenRecentlyClosedIntentProcessorTest.kt
new file mode 100644
index 0000000000..ec26cdd132
--- /dev/null
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/intent/OpenRecentlyClosedIntentProcessorTest.kt
@@ -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/. */
+
+package org.mozilla.fenix.home.intent
+
+import android.content.Intent
+import androidx.navigation.NavController
+import io.mockk.Called
+import io.mockk.mockk
+import io.mockk.verify
+import org.junit.Assert.assertFalse
+import org.junit.Assert.assertTrue
+import org.junit.Before
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mozilla.fenix.HomeActivity
+import org.mozilla.fenix.NavGraphDirections
+import org.mozilla.fenix.ext.nav
+import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
+
+@RunWith(FenixRobolectricTestRunner::class)
+class OpenRecentlyClosedIntentProcessorTest {
+ private lateinit var activity: HomeActivity
+ private lateinit var navController: NavController
+ private lateinit var out: Intent
+ private lateinit var processor: OpenRecentlyClosedIntentProcessor
+
+ @Before
+ fun setup() {
+ activity = mockk(relaxed = true)
+ navController = mockk(relaxed = true)
+ out = mockk(relaxed = true)
+ processor = OpenRecentlyClosedIntentProcessor()
+ }
+
+ @Test
+ fun `GIVEN a blank intent WHEN it is processed THEN nothing should happen`() {
+ assertFalse(processor.process(Intent(), navController, out))
+
+ verify { activity wasNot Called }
+ verify { navController wasNot Called }
+ verify { out wasNot Called }
+ }
+
+ @Test
+ fun `GIVEN an intent with wrong action WHEN it is processed THEN nothing should happen`() {
+ val intent = Intent().apply {
+ action = TEST_WRONG_ACTION
+ }
+
+ assertFalse(processor.process(intent, navController, out))
+
+ verify { activity wasNot Called }
+ verify { navController wasNot Called }
+ verify { out wasNot Called }
+ }
+
+ @Test
+ fun `GIVEN an intent with correct action WHEN it is processed THEN navigate to the recently closed fragment`() {
+ val intent = Intent().apply {
+ action = OpenRecentlyClosedIntentProcessor.ACTION_OPEN_RECENTLY_CLOSED
+ }
+
+ assertTrue(processor.process(intent, navController, out))
+
+ verify { navController.nav(null, NavGraphDirections.actionGlobalRecentlyClosed()) }
+ verify { out wasNot Called }
+ }
+
+ companion object {
+ const val TEST_WRONG_ACTION = "test-action"
+ }
+}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentvisits/interactor/RecentVisitsInteractorTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentvisits/interactor/RecentVisitsInteractorTest.kt
index e0be6f843c..eb5d9ec51f 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentvisits/interactor/RecentVisitsInteractorTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/recentvisits/interactor/RecentVisitsInteractorTest.kt
@@ -11,9 +11,9 @@ import mozilla.components.concept.storage.HistoryMetadata
import mozilla.components.concept.storage.HistoryMetadataKey
import org.junit.Before
import org.junit.Test
+import org.mozilla.fenix.home.bookmarks.controller.BookmarksController
import org.mozilla.fenix.home.pocket.PocketStoriesController
import org.mozilla.fenix.home.privatebrowsing.controller.PrivateBrowsingController
-import org.mozilla.fenix.home.recentbookmarks.controller.RecentBookmarksController
import org.mozilla.fenix.home.recentsyncedtabs.controller.RecentSyncedTabController
import org.mozilla.fenix.home.recenttabs.controller.RecentTabController
import org.mozilla.fenix.home.recentvisits.RecentlyVisitedItem.RecentHistoryGroup
@@ -29,7 +29,7 @@ class RecentVisitsInteractorTest {
mockk(relaxed = true)
private val recentTabController: RecentTabController = mockk(relaxed = true)
private val recentSyncedTabController: RecentSyncedTabController = mockk(relaxed = true)
- private val recentBookmarksController: RecentBookmarksController = mockk(relaxed = true)
+ private val bookmarksController: BookmarksController = mockk(relaxed = true)
private val recentVisitsController: RecentVisitsController = mockk(relaxed = true)
private val pocketStoriesController: PocketStoriesController = mockk(relaxed = true)
private val privateBrowsingController: PrivateBrowsingController = mockk(relaxed = true)
@@ -44,7 +44,7 @@ class RecentVisitsInteractorTest {
defaultSessionControlController,
recentTabController,
recentSyncedTabController,
- recentBookmarksController,
+ bookmarksController,
recentVisitsController,
pocketStoriesController,
privateBrowsingController,
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/sessioncontrol/SessionControlViewTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/sessioncontrol/SessionControlViewTest.kt
index 22239dfc86..9094f09f99 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/sessioncontrol/SessionControlViewTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/sessioncontrol/SessionControlViewTest.kt
@@ -14,7 +14,7 @@ import mozilla.components.service.pocket.PocketStory.PocketRecommendedStory
import org.junit.Assert.assertEquals
import org.junit.Assert.assertTrue
import org.junit.Test
-import org.mozilla.fenix.home.recentbookmarks.RecentBookmark
+import org.mozilla.fenix.home.bookmarks.Bookmark
import org.mozilla.fenix.home.recentvisits.RecentlyVisitedItem.RecentHistoryGroup
import org.mozilla.fenix.utils.Settings
@@ -26,13 +26,13 @@ class SessionControlViewTest {
val topSites = emptyList<TopSite>()
val collections = emptyList<TabCollection>()
val expandedCollections = emptySet<Long>()
- val recentBookmarks = listOf(RecentBookmark())
+ val bookmarks = listOf(Bookmark())
val historyMetadata = emptyList<RecentHistoryGroup>()
val pocketStories = emptyList<PocketStory>()
every { settings.showTopSitesFeature } returns true
every { settings.showRecentTabsFeature } returns true
- every { settings.showRecentBookmarksFeature } returns true
+ every { settings.showBookmarksHomeFeature } returns true
every { settings.historyMetadataUIFeature } returns true
every { settings.showPocketRecommendationsFeature } returns true
@@ -41,7 +41,7 @@ class SessionControlViewTest {
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
false,
null,
false,
@@ -51,8 +51,8 @@ class SessionControlViewTest {
)
assertTrue(results[0] is AdapterItem.TopPlaceholderItem)
- assertTrue(results[1] is AdapterItem.RecentBookmarksHeader)
- assertTrue(results[2] is AdapterItem.RecentBookmarks)
+ assertTrue(results[1] is AdapterItem.BookmarksHeader)
+ assertTrue(results[2] is AdapterItem.Bookmarks)
assertTrue(results[3] is AdapterItem.CustomizeHomeButton)
}
@@ -62,14 +62,14 @@ class SessionControlViewTest {
val topSites = emptyList<TopSite>()
val collections = emptyList<TabCollection>()
val expandedCollections = emptySet<Long>()
- val recentBookmarks = listOf(RecentBookmark())
+ val bookmarks = listOf(Bookmark())
val historyMetadata = emptyList<RecentHistoryGroup>()
val pocketStories = emptyList<PocketStory>()
val nimbusMessageCard: Message = mockk()
every { settings.showTopSitesFeature } returns true
every { settings.showRecentTabsFeature } returns true
- every { settings.showRecentBookmarksFeature } returns true
+ every { settings.showBookmarksHomeFeature } returns true
every { settings.historyMetadataUIFeature } returns true
every { settings.showPocketRecommendationsFeature } returns true
@@ -78,7 +78,7 @@ class SessionControlViewTest {
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
false,
nimbusMessageCard,
false,
@@ -96,13 +96,13 @@ class SessionControlViewTest {
val topSites = emptyList<TopSite>()
val collections = emptyList<TabCollection>()
val expandedCollections = emptySet<Long>()
- val recentBookmarks = listOf<RecentBookmark>()
+ val bookmarks = listOf<Bookmark>()
val historyMetadata = emptyList<RecentHistoryGroup>()
val pocketStories = emptyList<PocketStory>()
every { settings.showTopSitesFeature } returns true
every { settings.showRecentTabsFeature } returns true
- every { settings.showRecentBookmarksFeature } returns true
+ every { settings.showBookmarksHomeFeature } returns true
every { settings.historyMetadataUIFeature } returns true
every { settings.showPocketRecommendationsFeature } returns true
@@ -111,7 +111,7 @@ class SessionControlViewTest {
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
false,
null,
true,
@@ -132,13 +132,13 @@ class SessionControlViewTest {
val topSites = emptyList<TopSite>()
val collections = emptyList<TabCollection>()
val expandedCollections = emptySet<Long>()
- val recentBookmarks = listOf<RecentBookmark>()
+ val bookmarks = listOf<Bookmark>()
val historyMetadata = listOf(RecentHistoryGroup("title", emptyList()))
val pocketStories = emptyList<PocketStory>()
every { settings.showTopSitesFeature } returns true
every { settings.showRecentTabsFeature } returns true
- every { settings.showRecentBookmarksFeature } returns true
+ every { settings.showBookmarksHomeFeature } returns true
every { settings.historyMetadataUIFeature } returns true
every { settings.showPocketRecommendationsFeature } returns true
@@ -147,7 +147,7 @@ class SessionControlViewTest {
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
false,
null,
false,
@@ -168,13 +168,13 @@ class SessionControlViewTest {
val topSites = emptyList<TopSite>()
val collections = emptyList<TabCollection>()
val expandedCollections = emptySet<Long>()
- val recentBookmarks = listOf<RecentBookmark>()
+ val bookmarks = listOf<Bookmark>()
val historyMetadata = emptyList<RecentHistoryGroup>()
val pocketStories = listOf(PocketRecommendedStory("", "", "", "", "", 1, 1))
every { settings.showTopSitesFeature } returns true
every { settings.showRecentTabsFeature } returns true
- every { settings.showRecentBookmarksFeature } returns true
+ every { settings.showBookmarksHomeFeature } returns true
every { settings.historyMetadataUIFeature } returns true
every { settings.showPocketRecommendationsFeature } returns true
@@ -183,7 +183,7 @@ class SessionControlViewTest {
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
false,
null,
false,
@@ -205,7 +205,7 @@ class SessionControlViewTest {
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
false,
null,
false,
@@ -220,18 +220,18 @@ class SessionControlViewTest {
}
@Test
- fun `GIVEN none recentBookmarks,recentTabs, historyMetadata or pocketArticles WHEN normalModeAdapterItems is called THEN the customize home button is not added`() {
+ fun `GIVEN none bookmarks, recentTabs, historyMetadata or pocketArticles WHEN normalModeAdapterItems is called THEN the customize home button is not added`() {
val settings: Settings = mockk()
val topSites = emptyList<TopSite>()
val collections = emptyList<TabCollection>()
val expandedCollections = emptySet<Long>()
- val recentBookmarks = listOf<RecentBookmark>()
+ val bookmarks = listOf<Bookmark>()
val historyMetadata = emptyList<RecentHistoryGroup>()
val pocketStories = emptyList<PocketStory>()
every { settings.showTopSitesFeature } returns true
every { settings.showRecentTabsFeature } returns true
- every { settings.showRecentBookmarksFeature } returns true
+ every { settings.showBookmarksHomeFeature } returns true
every { settings.historyMetadataUIFeature } returns true
every { settings.showPocketRecommendationsFeature } returns true
@@ -240,7 +240,7 @@ class SessionControlViewTest {
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
false,
null,
false,
@@ -261,13 +261,13 @@ class SessionControlViewTest {
val topSites = listOf<TopSite>(mockk())
val collections = listOf(collection)
val expandedCollections = emptySet<Long>()
- val recentBookmarks = listOf<RecentBookmark>(mockk())
+ val bookmarks = listOf<Bookmark>(mockk())
val historyMetadata = listOf<RecentHistoryGroup>(mockk())
val pocketStories = listOf<PocketStory>(mockk())
every { settings.showTopSitesFeature } returns true
every { settings.showRecentTabsFeature } returns true
- every { settings.showRecentBookmarksFeature } returns true
+ every { settings.showBookmarksHomeFeature } returns true
every { settings.historyMetadataUIFeature } returns true
every { settings.showPocketRecommendationsFeature } returns true
every { settings.enableComposeTopSites } returns false
@@ -277,7 +277,7 @@ class SessionControlViewTest {
topSites,
collections,
expandedCollections,
- recentBookmarks,
+ bookmarks,
false,
null,
true,
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenuTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenuTest.kt
index f16d3cef42..48106fbd2f 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenuTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenuTest.kt
@@ -52,7 +52,7 @@ class BookmarkItemMenuTest {
assertNotNull(deleteItem)
assertEquals("Delete", deleteItem!!.text)
assertEquals(
- TextStyle(color = context.getColorFromAttr(R.attr.textWarning)),
+ TextStyle(color = context.getColorFromAttr(R.attr.textCritical)),
deleteItem!!.textStyle,
)
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/messaging/MessagingFeatureTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/messaging/MessagingFeatureTest.kt
index 838e852f42..b56dcbca42 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/messaging/MessagingFeatureTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/messaging/MessagingFeatureTest.kt
@@ -21,7 +21,10 @@ class MessagingFeatureTest {
@Test
fun `WHEN start is called THEN evaluate messages`() {
val appStore: AppStore = spyk(AppStore())
- val binding = MessagingFeature(appStore)
+ val binding = MessagingFeature(
+ appStore = appStore,
+ surface = FenixMessageSurfaceId.HOMESCREEN,
+ )
binding.start()
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/search/toolbar/ToolbarViewTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/search/toolbar/ToolbarViewTest.kt
index 5aa5baf8d9..3edb9798eb 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/search/toolbar/ToolbarViewTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/search/toolbar/ToolbarViewTest.kt
@@ -146,8 +146,8 @@ class ToolbarViewTest {
every { context.settings().showUnifiedSearchFeature } returns true
every { context.settings().shouldShowHistorySuggestions } returns true
every { context.settings().shouldShowBookmarkSuggestions } returns true
- every { context.settings().isTabletAndTabStripEnabled } returns false
every { context.settings().enableIncompleteToolbarRedesign } returns false
+ every { context.settings().shouldAutocompleteInAwesomebar } returns false
val view = buildToolbarView(false)
mockkObject(FeatureFlags)
@@ -163,7 +163,6 @@ class ToolbarViewTest {
every { context.settings().showUnifiedSearchFeature } returns true
every { context.settings().shouldShowHistorySuggestions } returns true
every { context.settings().shouldShowBookmarkSuggestions } returns true
- every { context.settings().isTabletAndTabStripEnabled } returns false
every { context.settings().enableIncompleteToolbarRedesign } returns false
val view = buildToolbarView(false)
mockkObject(FeatureFlags)
@@ -450,7 +449,6 @@ class ToolbarViewTest {
fun `GIVEN autocomplete disabled WHEN the toolbar view is initialized THEN create an autocomplete with disabled functionality`() {
val settings: Settings = mockk {
every { shouldAutocompleteInAwesomebar } returns false
- every { isTabletAndTabStripEnabled } returns false
}
val toolbarView = buildToolbarView(true, settings)
@@ -463,7 +461,6 @@ class ToolbarViewTest {
fun `GIVEN autocomplete enabled WHEN the toolbar view is initialized THEN create an autocomplete with enabled functionality`() {
val settings: Settings = mockk {
every { shouldAutocompleteInAwesomebar } returns true
- every { isTabletAndTabStripEnabled } returns false
}
val toolbarView = buildToolbarView(true, settings)
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/PreferenceBackedRadioButtonTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/PreferenceBackedRadioButtonTest.kt
index 734db75ec9..7dcdd5bf2d 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/PreferenceBackedRadioButtonTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/PreferenceBackedRadioButtonTest.kt
@@ -137,6 +137,7 @@ class PreferenceBackedRadioButtonTest {
fun `WHEN the button gets enabled THEN set isChecked based on the value from the backing preference`() {
every { testContext.settings().preferences.getBoolean(any(), any()) } returns true
val button = spyk(PreferenceBackedRadioButton(testContext))
+ every { button.isChecked = any() } returns Unit
button.isEnabled = true
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/creditcards/CreditCardEditorViewTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/creditcards/CreditCardEditorViewTest.kt
index 6545d11d09..6a6d01d58f 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/creditcards/CreditCardEditorViewTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/creditcards/CreditCardEditorViewTest.kt
@@ -168,7 +168,7 @@ class CreditCardEditorViewTest {
assertNotNull(fragmentCreditCardEditorBinding.cardNumberLayout.error)
assertEquals(
fragmentCreditCardEditorBinding.cardNumberLayout.errorCurrentTextColors,
- fragmentCreditCardEditorBinding.root.context.getColorFromAttr(R.attr.textWarning),
+ fragmentCreditCardEditorBinding.root.context.getColorFromAttr(R.attr.textCritical),
)
verify(exactly = 0) {
@@ -193,7 +193,7 @@ class CreditCardEditorViewTest {
assertNotNull(fragmentCreditCardEditorBinding.cardNumberLayout.error)
assertEquals(
fragmentCreditCardEditorBinding.cardNumberLayout.errorCurrentTextColors,
- fragmentCreditCardEditorBinding.root.context.getColorFromAttr(R.attr.textWarning),
+ fragmentCreditCardEditorBinding.root.context.getColorFromAttr(R.attr.textCritical),
)
verify(exactly = 0) {
@@ -269,7 +269,7 @@ class CreditCardEditorViewTest {
assertNotNull(fragmentCreditCardEditorBinding.nameOnCardLayout.error)
assertEquals(
fragmentCreditCardEditorBinding.nameOnCardLayout.errorCurrentTextColors,
- fragmentCreditCardEditorBinding.root.context.getColorFromAttr(R.attr.textWarning),
+ fragmentCreditCardEditorBinding.root.context.getColorFromAttr(R.attr.textCritical),
)
verify(exactly = 0) {
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/share/SaveToPDFMiddlewareTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/share/SaveToPDFMiddlewareTest.kt
index 72db3c97cb..bcbdf6fc3f 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/share/SaveToPDFMiddlewareTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/share/SaveToPDFMiddlewareTest.kt
@@ -4,7 +4,6 @@
package org.mozilla.fenix.share
-import android.content.Context
import io.mockk.every
import io.mockk.mockk
import io.mockk.verify
@@ -15,7 +14,6 @@ import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.concept.engine.EngineSession
import mozilla.components.service.glean.testing.GleanTestRule
import mozilla.components.support.test.libstate.ext.waitUntilIdle
-import mozilla.components.support.test.mock
import mozilla.components.support.test.robolectric.testContext
import mozilla.components.support.test.rule.MainCoroutineRule
import mozilla.components.support.test.rule.runTestOnMain
@@ -25,6 +23,7 @@ import org.junit.Before
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
+import org.mozilla.experiments.nimbus.NimbusEventStore
import org.mozilla.fenix.GleanMetrics.Events
import org.mozilla.fenix.R
import org.mozilla.fenix.browser.StandardSnackbarError
@@ -48,8 +47,15 @@ class SaveToPDFMiddlewareTest {
// Only ERROR_PRINT_SETTINGS_SERVICE_NOT_AVAILABLE is available for testing
class MockGeckoPrintException() : GeckoSession.GeckoPrintException()
+ private lateinit var middleware: SaveToPDFMiddleware
+
+ private lateinit var eventStore: NimbusEventStore
+
@Before
fun setup() {
+ eventStore = mockk(relaxed = true)
+ middleware =
+ SaveToPDFMiddleware(context = testContext, nimbusEventStore = eventStore)
appStore = mockk(relaxed = true)
every { testContext.components.appStore } returns appStore
}
@@ -58,7 +64,6 @@ class SaveToPDFMiddlewareTest {
fun `GIVEN a save to pdf request WHEN it fails unexpectedly THEN unknown failure telemetry is sent AND a snackbar error is shown`() =
runTestOnMain {
val exceptionToThrow = RuntimeException("reader save to pdf failed")
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -104,7 +109,6 @@ class SaveToPDFMiddlewareTest {
fun `GIVEN a save to pdf request WHEN it fails due to io THEN io failure telemetry is sent AND a snackbar error is shown`() =
runTestOnMain {
val exceptionToThrow = IOException()
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -148,7 +152,6 @@ class SaveToPDFMiddlewareTest {
fun `GIVEN a save to pdf request WHEN it fails due to print exception THEN print exception failure telemetry is sent AND a snackbar error is shown`() =
runTestOnMain {
val exceptionToThrow = MockGeckoPrintException()
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -191,7 +194,6 @@ class SaveToPDFMiddlewareTest {
@Test
fun `GIVEN a save to pdf request WHEN it completes THEN completed telemetry is sent`() =
runTestOnMain {
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -223,7 +225,6 @@ class SaveToPDFMiddlewareTest {
@Test
fun `GIVEN a save to pdf request WHEN it the action begins THEN tapped telemetry is sent`() =
runTestOnMain {
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -254,8 +255,6 @@ class SaveToPDFMiddlewareTest {
@Test
fun `GIVEN a save as pdf exception THEN should calculate the correct failure reason for telemetry`() = runTestOnMain {
- val mockContext: Context = mock()
- val middleware = SaveToPDFMiddleware(mockContext)
val noSettingsService = middleware.telemetryErrorReason(MockGeckoPrintException())
assertEquals("no_settings_service", noSettingsService)
val ioException = middleware.telemetryErrorReason(IOException())
@@ -266,8 +265,6 @@ class SaveToPDFMiddlewareTest {
@Test
fun `GIVEN a save as pdf page type THEN should calculate the correct page source for telemetry`() = runTestOnMain {
- val mockContext: Context = mock()
- val middleware = SaveToPDFMiddleware(mockContext)
assertEquals("pdf", middleware.telemetrySource(isPdfViewer = true))
assertEquals("non-pdf", middleware.telemetrySource(isPdfViewer = false))
assertEquals("unknown", middleware.telemetrySource(isPdfViewer = null))
@@ -276,7 +273,6 @@ class SaveToPDFMiddlewareTest {
@Test
fun `GIVEN a print request WHEN it fails unexpectedly THEN unknown failure telemetry is sent AND a snackbar error is shown`() = runTestOnMain {
val exceptionToThrow = RuntimeException("No Print Spooler")
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -321,7 +317,6 @@ class SaveToPDFMiddlewareTest {
@Test
fun `GIVEN a print request WHEN it fails due to print exception THEN print exception failure telemetry is sent AND a snackbar error is shown`() = runTestOnMain {
val exceptionToThrow = MockGeckoPrintException()
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -363,7 +358,6 @@ class SaveToPDFMiddlewareTest {
@Test
fun `GIVEN a print request WHEN it completes THEN completed telemetry is sent`() = runTestOnMain {
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -394,7 +388,6 @@ class SaveToPDFMiddlewareTest {
@Test
fun `GIVEN a print request WHEN it the action begins THEN tapped telemetry is sent`() = runTestOnMain {
- val middleware = SaveToPDFMiddleware(testContext)
val mockEngineSession: EngineSession = mockk<EngineSession>().apply {
every {
checkForPdfViewer(any(), any())
@@ -421,5 +414,8 @@ class SaveToPDFMiddlewareTest {
assertNotNull(response)
val source = response?.firstOrNull()?.extra?.get("source")
assertEquals("non-pdf", source)
+ verify {
+ eventStore.recordEvent("print_tapped")
+ }
}
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/sync/ext/SyncedDeviceTabsTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/sync/ext/SyncedDeviceTabsTest.kt
index acf66374bc..56bc49203d 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/sync/ext/SyncedDeviceTabsTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/sync/ext/SyncedDeviceTabsTest.kt
@@ -9,12 +9,14 @@ import io.mockk.mockk
import mozilla.components.browser.storage.sync.SyncedDeviceTabs
import mozilla.components.browser.storage.sync.Tab
import mozilla.components.browser.storage.sync.TabEntry
+import mozilla.components.concept.sync.DeviceCapability
import mozilla.components.concept.sync.DeviceType
import org.junit.Assert.assertEquals
import org.junit.Assert.assertTrue
import org.junit.Test
import org.mozilla.fenix.tabstray.ext.toComposeList
import org.mozilla.fenix.tabstray.syncedtabs.SyncedTabsListItem
+import org.mozilla.fenix.tabstray.syncedtabs.SyncedTabsListSupportedFeature
class SyncedDeviceTabsTest {
private val noTabDevice = SyncedDeviceTabs(
@@ -22,15 +24,17 @@ class SyncedDeviceTabsTest {
every { displayName } returns "Charcoal"
every { id } returns "123"
every { deviceType } returns DeviceType.DESKTOP
+ every { capabilities } returns emptyList()
},
tabs = emptyList(),
)
- private val oneTabDevice = SyncedDeviceTabs(
+ private val oneTabDeviceWithoutCapabilities = SyncedDeviceTabs(
device = mockk {
every { displayName } returns "Charcoal"
every { id } returns "1234"
every { deviceType } returns DeviceType.DESKTOP
+ every { capabilities } returns emptyList()
},
tabs = listOf(
Tab(
@@ -48,11 +52,35 @@ class SyncedDeviceTabsTest {
),
)
+ private val oneTabDeviceWithCapabilities = SyncedDeviceTabs(
+ device = mockk {
+ every { displayName } returns "Sapphire"
+ every { id } returns "123456"
+ every { deviceType } returns DeviceType.MOBILE
+ every { capabilities } returns listOf(DeviceCapability.CLOSE_TABS)
+ },
+ tabs = listOf(
+ Tab(
+ history = listOf(
+ TabEntry(
+ title = "Thunderbird",
+ url = "https://getthunderbird.org",
+ iconUrl = null,
+ ),
+ ),
+ active = 0,
+ lastUsed = 0L,
+ inactive = false,
+ ),
+ ),
+ )
+
private val twoTabDevice = SyncedDeviceTabs(
device = mockk {
every { displayName } returns "Emerald"
every { id } returns "12345"
every { deviceType } returns DeviceType.MOBILE
+ every { capabilities } returns emptyList()
},
tabs = listOf(
Tab(
@@ -84,12 +112,12 @@ class SyncedDeviceTabsTest {
@Test
fun `GIVEN two synced devices WHEN the compose list is generated THEN two device section is returned`() {
- val syncedDeviceList = listOf(oneTabDevice, twoTabDevice)
+ val syncedDeviceList = listOf(oneTabDeviceWithoutCapabilities, twoTabDevice)
val listData = syncedDeviceList.toComposeList()
assertEquals(2, listData.count())
assertTrue(listData[0] is SyncedTabsListItem.DeviceSection)
- assertEquals(oneTabDevice.tabs.size, (listData[0] as SyncedTabsListItem.DeviceSection).tabs.size)
+ assertEquals(oneTabDeviceWithoutCapabilities.tabs.size, (listData[0] as SyncedTabsListItem.DeviceSection).tabs.size)
assertTrue(listData[1] is SyncedTabsListItem.DeviceSection)
assertEquals(twoTabDevice.tabs.size, (listData[1] as SyncedTabsListItem.DeviceSection).tabs.size)
}
@@ -103,4 +131,30 @@ class SyncedDeviceTabsTest {
assertTrue(listData[0] is SyncedTabsListItem.DeviceSection)
assertEquals(0, (listData[0] as SyncedTabsListItem.DeviceSection).tabs.size)
}
+
+ @Test
+ fun `GIVEN two synced devices AND one device supports closing synced tabs AND closing synced tabs is enabled WHEN the compose list is generated THEN two device sections are returned`() {
+ val syncedDeviceList = listOf(oneTabDeviceWithoutCapabilities, oneTabDeviceWithCapabilities)
+ val listData = syncedDeviceList.toComposeList(setOf(SyncedTabsListSupportedFeature.CLOSE_TABS))
+ val deviceSections = listData.filterIsInstance<SyncedTabsListItem.DeviceSection>()
+
+ assertEquals(2, listData.size)
+ assertEquals(listData.size, deviceSections.size)
+
+ assertEquals(setOf(SyncedTabsListItem.Tab.Action.None), deviceSections[0].tabs.map { it.action }.toSet())
+ assertEquals(setOf(SyncedTabsListItem.Tab.Action.Close(deviceId = "123456")), deviceSections[1].tabs.map { it.action }.toSet())
+ }
+
+ @Test
+ fun `GIVEN two synced devices AND one device supports closing synced tabs AND closing synced tabs is disabled WHEN the compose list is generated THEN two device sections are returned`() {
+ val syncedDeviceList = listOf(oneTabDeviceWithoutCapabilities, oneTabDeviceWithCapabilities)
+ val listData = syncedDeviceList.toComposeList(emptySet())
+ val deviceSections = listData.filterIsInstance<SyncedTabsListItem.DeviceSection>()
+
+ assertEquals(2, listData.size)
+ assertEquals(listData.size, deviceSections.size)
+
+ assertEquals(setOf(SyncedTabsListItem.Tab.Action.None), deviceSections[0].tabs.map { it.action }.toSet())
+ assertEquals(setOf(SyncedTabsListItem.Tab.Action.None), deviceSections[1].tabs.map { it.action }.toSet())
+ }
}
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/tabstray/DefaultTabsTrayControllerTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/tabstray/DefaultTabsTrayControllerTest.kt
index 3f522dea41..87f0b9b232 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/tabstray/DefaultTabsTrayControllerTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/tabstray/DefaultTabsTrayControllerTest.kt
@@ -31,6 +31,7 @@ import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.browser.storage.sync.Tab
import mozilla.components.browser.storage.sync.TabEntry
import mozilla.components.concept.base.profiler.Profiler
+import mozilla.components.feature.accounts.push.CloseTabsUseCases
import mozilla.components.feature.tabs.TabsUseCases
import mozilla.components.service.glean.testing.GleanTestRule
import mozilla.components.support.test.ext.joinBlocking
@@ -103,6 +104,7 @@ class DefaultTabsTrayControllerTest {
private val settings: Settings = mockk(relaxed = true)
private val bookmarksUseCase: BookmarksUseCase = mockk(relaxed = true)
+ private val closeSyncedTabsUseCases: CloseTabsUseCases = mockk(relaxed = true)
private val collectionStorage: TabCollectionStorage = mockk(relaxed = true)
private val bookmarksSharedViewModel: BookmarksSharedViewModel = mockk(relaxed = true)
@@ -570,6 +572,19 @@ class DefaultTabsTrayControllerTest {
}
@Test
+ fun `WHEN a synced tab is closed THEN a command to close the tab is sent`() {
+ val tab = mockk<Tab>()
+ val entry = mockk<TabEntry>()
+
+ every { tab.active() }.answers { entry }
+ every { entry.url }.answers { "https://mozilla.org" }
+
+ createController().handleSyncedTabClosed(deviceId = "1234", tab)
+
+ coVerify(exactly = 1) { closeSyncedTabsUseCases.close("1234", any()) }
+ }
+
+ @Test
fun `GIVEN no tabs selected and the user is not in multi select mode WHEN the user long taps a tab THEN that tab will become selected`() {
trayStore = TabsTrayStore()
val controller = spyk(createController())
@@ -1153,6 +1168,7 @@ class DefaultTabsTrayControllerTest {
navigationInteractor = navigationInteractor,
tabsUseCases = tabsUseCases,
bookmarksUseCase = bookmarksUseCase,
+ closeSyncedTabsUseCases = closeSyncedTabsUseCases,
collectionStorage = collectionStorage,
ioDispatcher = testDispatcher,
selectTabPosition = selectTabPosition,
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogBindingTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogBindingTest.kt
index 6b860a6212..ed8b290395 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogBindingTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogBindingTest.kt
@@ -56,7 +56,6 @@ class TranslationsDialogBindingTest {
val binding = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = tabId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
testContext.getString(
R.string.translations_bottom_sheet_title_translation_completed,
@@ -138,7 +137,6 @@ class TranslationsDialogBindingTest {
val binding = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = tabId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
testContext.getString(
R.string.translations_bottom_sheet_title_translation_completed,
@@ -184,7 +182,6 @@ class TranslationsDialogBindingTest {
val binding = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = tabId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
testContext.getString(
R.string.translations_bottom_sheet_title_translation_completed,
@@ -231,7 +228,6 @@ class TranslationsDialogBindingTest {
val binding = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = tabId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
testContext.getString(
R.string.translations_bottom_sheet_title_translation_completed,
@@ -249,6 +245,31 @@ class TranslationsDialogBindingTest {
),
).joinBlocking()
+ // Simulate success response post-translate
+ val detectedLanguages = DetectedLanguages(
+ documentLangTag = "en",
+ supportedDocumentLang = true,
+ userPreferredLangTag = "es",
+ )
+
+ val translationEngineState = TranslationEngineState(
+ detectedLanguages = detectedLanguages,
+ error = null,
+ isEngineReady = true,
+ hasVisibleChange = true,
+ requestedTranslationPair = TranslationPair(
+ fromLanguage = "en",
+ toLanguage = "es",
+ ),
+ )
+
+ browserStore.dispatch(
+ TranslationsAction.TranslateStateChangeAction(
+ tabId = tabId,
+ translationEngineState = translationEngineState,
+ ),
+ ).joinBlocking()
+
verify(translationsDialogStore).dispatch(
TranslationsDialogAction.UpdateTranslated(
true,
@@ -281,7 +302,6 @@ class TranslationsDialogBindingTest {
val binding = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = tabId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
testContext.getString(
R.string.translations_bottom_sheet_title_translation_completed,
@@ -321,7 +341,6 @@ class TranslationsDialogBindingTest {
val binding = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = tabId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
testContext.getString(
R.string.translations_bottom_sheet_title_translation_completed,
@@ -359,7 +378,6 @@ class TranslationsDialogBindingTest {
val binding = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = tabId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
testContext.getString(
R.string.translations_bottom_sheet_title_translation_completed,
@@ -410,7 +428,6 @@ class TranslationsDialogBindingTest {
val binding = TranslationsDialogBinding(
browserStore = browserStore,
translationsDialogStore = translationsDialogStore,
- sessionId = tabId,
getTranslatedPageTitle = { localizedFrom, localizedTo ->
testContext.getString(
R.string.translations_bottom_sheet_title_translation_completed,
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogMiddlewareTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogMiddlewareTest.kt
index c03c74de5c..e0e2aa1ffe 100644
--- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogMiddlewareTest.kt
+++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/translations/TranslationsDialogMiddlewareTest.kt
@@ -4,11 +4,12 @@
package org.mozilla.fenix.translations
-import android.content.Context
-import io.mockk.mockk
+import io.mockk.spyk
import io.mockk.verify
import kotlinx.coroutines.test.runTest
import mozilla.components.browser.state.action.TranslationsAction
+import mozilla.components.browser.state.state.BrowserState
+import mozilla.components.browser.state.state.createTab
import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.concept.engine.translate.Language
import mozilla.components.concept.engine.translate.TranslationOperation
@@ -25,11 +26,17 @@ import org.mozilla.fenix.utils.Settings
@RunWith(FenixRobolectricTestRunner::class)
class TranslationsDialogMiddlewareTest {
- private val browserStore = mockk<BrowserStore>(relaxed = true)
- private val context = mockk<Context>(relaxed = true)
+ private val browserStore = spyk(
+ BrowserStore(
+ BrowserState(
+ tabs = listOf(createTab("https://www.mozilla.org", id = "tab1")),
+ selectedTabId = "tab1",
+ ),
+ ),
+ )
private val settings = Settings(testContext)
private val translationsDialogMiddleware =
- TranslationsDialogMiddleware(browserStore = browserStore, sessionId = "tab1", settings = settings)
+ TranslationsDialogMiddleware(browserStore = browserStore, settings = settings)
@Test
fun `GIVEN translationState WHEN FetchSupportedLanguages action is called THEN call OperationRequestedAction from BrowserStore`() =
@@ -166,10 +173,8 @@ class TranslationsDialogMiddlewareTest {
verify {
browserStore.dispatch(
- TranslationsAction.UpdatePageSettingAction(
- tabId = "tab1",
- operation = TranslationPageSettingOperation.UPDATE_ALWAYS_OFFER_POPUP,
- setting = false,
+ TranslationsAction.SetGlobalOfferTranslateSettingAction(
+ offerTranslation = false,
),
)
}
diff --git a/mobile/android/fenix/app/src/test/resources/robolectric.properties b/mobile/android/fenix/app/src/test/resources/robolectric.properties
index e341e6bfbb..5ef22e717d 100644
--- a/mobile/android/fenix/app/src/test/resources/robolectric.properties
+++ b/mobile/android/fenix/app/src/test/resources/robolectric.properties
@@ -1,2 +1 @@
-sdk=28
application=org.mozilla.fenix.helpers.FenixRobolectricTestApplication