Merge remote-tracking branch 'upstream/master' into fork

pull/35/head
Adam Novak 4 years ago
commit be26c10ffe

@ -67,6 +67,8 @@ private fun collectionCreationReducer(
is CollectionCreationAction.RemoveAllTabs -> prevState.copy(selectedTabs = emptySet()) is CollectionCreationAction.RemoveAllTabs -> prevState.copy(selectedTabs = emptySet())
is CollectionCreationAction.TabAdded -> prevState.copy(selectedTabs = prevState.selectedTabs + action.tab) is CollectionCreationAction.TabAdded -> prevState.copy(selectedTabs = prevState.selectedTabs + action.tab)
is CollectionCreationAction.TabRemoved -> prevState.copy(selectedTabs = prevState.selectedTabs - action.tab) is CollectionCreationAction.TabRemoved -> prevState.copy(selectedTabs = prevState.selectedTabs - action.tab)
is CollectionCreationAction.StepChanged -> prevState.copy(saveCollectionStep = action.saveCollectionStep, is CollectionCreationAction.StepChanged -> prevState.copy(
defaultCollectionNumber = action.defaultCollectionNumber) saveCollectionStep = action.saveCollectionStep,
defaultCollectionNumber = action.defaultCollectionNumber
)
} }

@ -30,7 +30,7 @@ class WebAppSiteControlsBuilder(
if (!isPrivateSession) { return } if (!isPrivateSession) { return }
builder.setSmallIcon(R.drawable.ic_pbm_notification) builder.setSmallIcon(R.drawable.ic_private_browsing)
builder.setContentTitle(context.getString(R.string.pwa_site_controls_title_private, manifest.name)) builder.setContentTitle(context.getString(R.string.pwa_site_controls_title_private, manifest.name))
} }

@ -30,7 +30,7 @@ class PrivateNotificationService : AbstractPrivateNotificationService() {
override val store: BrowserStore by lazy { components.core.store } override val store: BrowserStore by lazy { components.core.store }
override fun NotificationCompat.Builder.buildNotification() { override fun NotificationCompat.Builder.buildNotification() {
setSmallIcon(R.drawable.ic_pbm_notification) setSmallIcon(R.drawable.ic_private_browsing)
setContentTitle(getString(R.string.app_name_private_4, getString(R.string.app_name))) setContentTitle(getString(R.string.app_name_private_4, getString(R.string.app_name)))
setContentText(getString(R.string.notification_pbm_delete_text_2)) setContentText(getString(R.string.notification_pbm_delete_text_2))
color = ContextCompat.getColor(this@PrivateNotificationService, R.color.pbm_notification_color) color = ContextCompat.getColor(this@PrivateNotificationService, R.color.pbm_notification_color)

@ -8,6 +8,7 @@ import android.view.LayoutInflater
import android.view.ViewGroup import android.view.ViewGroup
import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.ListAdapter
import mozilla.components.ui.widgets.WidgetSiteItemView
import org.mozilla.fenix.R import org.mozilla.fenix.R
data class TabHistoryItem( data class TabHistoryItem(
@ -23,7 +24,7 @@ class TabHistoryAdapter(
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): TabHistoryViewHolder { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): TabHistoryViewHolder {
val view = LayoutInflater.from(parent.context) val view = LayoutInflater.from(parent.context)
.inflate(R.layout.tab_history_list_item, parent, false) .inflate(R.layout.site_list_item, parent, false) as WidgetSiteItemView
return TabHistoryViewHolder(view, interactor) return TabHistoryViewHolder(view, interactor)
} }

@ -4,40 +4,38 @@
package org.mozilla.fenix.tabhistory package org.mozilla.fenix.tabhistory
import android.view.View import androidx.recyclerview.widget.RecyclerView
import androidx.core.view.isVisible import mozilla.components.browser.icons.BrowserIcons
import kotlinx.android.synthetic.main.tab_history_list_item.*
import mozilla.components.support.ktx.android.content.getColorFromAttr import mozilla.components.support.ktx.android.content.getColorFromAttr
import mozilla.components.ui.widgets.WidgetSiteItemView
import org.mozilla.fenix.R import org.mozilla.fenix.R
import org.mozilla.fenix.library.LibrarySiteItemView import org.mozilla.fenix.ext.components
import org.mozilla.fenix.utils.view.ViewHolder import org.mozilla.fenix.ext.loadIntoView
class TabHistoryViewHolder( class TabHistoryViewHolder(
view: View, private val view: WidgetSiteItemView,
private val interactor: TabHistoryViewInteractor private val interactor: TabHistoryViewInteractor,
) : ViewHolder(view) { private val icons: BrowserIcons = view.context.components.core.icons
) : RecyclerView.ViewHolder(view) {
private lateinit var item: TabHistoryItem private lateinit var item: TabHistoryItem
init { init {
history_layout.setOnClickListener { interactor.goToHistoryItem(item) } view.setOnClickListener { interactor.goToHistoryItem(item) }
} }
fun bind(item: TabHistoryItem) { fun bind(item: TabHistoryItem) {
this.item = item this.item = item
history_layout.displayAs(LibrarySiteItemView.ItemType.SITE) view.setText(label = item.title, caption = item.url)
history_layout.overflowView.isVisible = false icons.loadIntoView(view.iconView, item.url)
history_layout.titleView.text = item.title
history_layout.urlView.text = item.url
history_layout.loadFavicon(item.url)
if (item.isSelected) { if (item.isSelected) {
history_layout.setBackgroundColor( view.setBackgroundColor(
history_layout.context.getColorFromAttr(R.attr.tabHistoryItemSelectedBackground) view.context.getColorFromAttr(R.attr.tabHistoryItemSelectedBackground)
) )
} else { } else {
history_layout.background = null view.background = null
} }
} }
} }

@ -1,16 +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/.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="#FFFFFF">
<path
android:fillColor="#FF000000"
android:pathData="M12,8c1.1,0 2,-0.9 2,-2s-0.9,-2 -2,-2 -2,0.9 -2,2 0.9,2 2,2zM12,10c-1.1,0 -2,0.9 -2,2s0.9,2 2,2 2,-0.9 2,-2 -0.9,-2 -2,-2zM12,16c-1.1,0 -2,0.9 -2,2s0.9,2 2,2 2,-0.9 2,-2 -0.9,-2 -2,-2z"/>
</vector>

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<selector xmlns:android="http://schemas.android.com/apk/res/android"
android:enterFadeDuration="150" android:exitFadeDuration="150">
<item android:state_selected="false"
android:drawable="@drawable/bookmarks_circle_background_outline" />
<item android:state_selected="true"
android:drawable="@drawable/bookmarks_circle_background_filled" />
</selector>

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/bookmarks_icon_background_filled" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/bookmarks_icon_filled"
android:pathData="M6.749,21.248C6.4234,21.2471 6.1142,21.1054 5.9008,20.8595C5.6875,20.6136 5.5909,20.2874 5.636,19.965L6.414,14.4L2.674,10.38C2.3928,10.0785 2.2991,9.6474 2.4296,9.2564C2.5601,8.8654 2.8941,8.5771 3.3,8.505L8.529,7.57L10.993,2.624C11.1833,2.242 11.5733,2.0006 12,2.0006C12.4267,2.0006 12.8167,2.242 13.007,2.624L15.471,7.57L20.7,8.5C21.1057,8.5724 21.4394,8.8608 21.5697,9.2518C21.7,9.6427 21.6062,10.0737 21.325,10.375L17.586,14.4L18.364,19.968C18.4229,20.3853 18.2434,20.8005 17.8991,21.0434C17.5547,21.2864 17.1034,21.3164 16.73,21.121L12,18.654L7.269,21.119C7.1087,21.2035 6.9302,21.2478 6.749,21.248Z" />
</vector>
</item>
</layer-list>

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/bookmarks_icon_background_outline" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/bookmarks_icon_outline"
android:pathData="M12,2a1,1 0,0 1,0.87 0.507l2.768,4.884 5.536,0.977a1,1 0,0 1,0.624 1.588l-3.744,4.955 0.934,5.934a1,1 0,0 1,-1.456 1.039L12,18.955l-5.532,2.929a1,1 0,0 1,-1.456 -1.04l0.934,-5.933 -3.744,-4.955a1,1 0,0 1,0.624 -1.588l5.536,-0.977 2.768,-4.884A1,1 0,0 1,12 2zM12,5.028l-2.13,3.76a1,1 0,0 1,-0.696 0.49l-4.391,0.776 3.015,3.99a1,1 0,0 1,0.19 0.759l-0.69,4.378 4.234,-2.241a1,1 0,0 1,0.936 0l4.232,2.24 -0.689,-4.378a1,1 0,0 1,0.19 -0.759l3.015,-3.99 -4.39,-0.775a1,1 0,0 1,-0.697 -0.492L12,5.028z" />
</vector>
</item>
</layer-list>

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/collection_circle_icon_background" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/collection_circle_icon_foreground"
android:pathData="M19 9H5v9c0 0.5 0.5 1 1 1h12c0.5 0 1-0.5 1-1V9zm-1-2l-2-2H8L6 7h12zM3 18V8c0-0.7 0.5-1.5 1-2l2-2c0.5-0.5 1.3-1 2-1h8c0.8 0 1.5 0.4 2 1l2 2c0.4 0.5 1 1.3 1 2v10c0 1.5-1.5 3-3 3H6c-1.5 0-3-1.5-3-3z" />
<path
android:fillColor="@color/collection_circle_icon_foreground"
android:pathData="M16.5 11h-9a0.5 0.5 0 0 0 0 1h9a0.5 0.5 0 0 0 0-1zM16.5 16h-9a0.5 0.5 0 0 0 0 1h9a0.5 0.5 0 0 0 0-1zM16.5 13.5h-9a0.5 0.5 0 0 0 0 1h9a0.5 0.5 0 0 0 0-1z" />
</vector>
</item>
</layer-list>

@ -1,13 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="?primaryText"
android:pathData="M5,4a1,1 0,1 0,-2 0v16a1,1 0,1 0,2 0L5,4zM9,7a1,1 0,1 0,-2 0v13a1,1 0,1 0,2 0L9,7zM12,5a1,1 0,0 1,1 1v14a1,1 0,1 1,-2 0L11,6a1,1 0,0 1,1 -1zM16.452,5.694a1,1 0,1 0,-1.904 0.612l4.5,14a1,1 0,1 0,1.904 -0.612l-4.5,-14z" />
</vector>

@ -8,6 +8,6 @@
android:viewportWidth="24" android:viewportWidth="24"
android:viewportHeight="24"> android:viewportHeight="24">
<path <path
android:fillColor="?attr/accent" android:fillColor="?primaryText"
android:pathData="M4.47 7.5l3-3c0.3-0.3 0.7-0.3 1 0l4.2 4.2c0.8-1 0.7-2.4-0.2-3.3L9.84 2.7a2.5 2.5 0 0 0-3.53 0L2.77 6.28a2.5 2.5 0 0 0 0 3.52l2.66 2.67c0.9 0.9 2.25 1 3.2 0.2l-4.2-4.2a0.7 0.7 0 0 1 0-1zm16.8 6.63a2.5 2.5 0 0 1 0 3.53l-3.55 3.54a2.5 2.5 0 0 1-3.53 0l-2.7-2.7a2.49 2.49 0 0 1-0.2-3.24l4.2 4.2a0.7 0.7 0 0 0 1 0l3.04-3.05a0.7 0.7 0 0 0 0-1l-4.2-4.2c1-0.8 2.4-0.7 3.3 0.2l2.66 2.66zm-5.1 0.56a1 1 0 0 1-1.42 1.41L7.8 9.2A1 1 0 1 1 9.24 7.8l6.9 6.9z" /> android:pathData="M4.47 7.5l3-3c0.3-0.3 0.7-0.3 1 0l4.2 4.2c0.8-1 0.7-2.4-0.2-3.3L9.84 2.7a2.5 2.5 0 0 0-3.53 0L2.77 6.28a2.5 2.5 0 0 0 0 3.52l2.66 2.67c0.9 0.9 2.25 1 3.2 0.2l-4.2-4.2a0.7 0.7 0 0 1 0-1zm16.8 6.63a2.5 2.5 0 0 1 0 3.53l-3.55 3.54a2.5 2.5 0 0 1-3.53 0l-2.7-2.7a2.49 2.49 0 0 1-0.2-3.24l4.2 4.2a0.7 0.7 0 0 0 1 0l3.04-3.05a0.7 0.7 0 0 0 0-1l-4.2-4.2c1-0.8 2.4-0.7 3.3 0.2l2.66 2.66zm-5.1 0.56a1 1 0 0 1-1.42 1.41L7.8 9.2A1 1 0 1 1 9.24 7.8l6.9 6.9z" />
</vector> </vector>

@ -1,13 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/accent_normal_theme"
android:pathData="M14,6a2,2 0,1 1,-4 0,2 2,0 0,1 4,0zM14,12a2,2 0,1 1,-4 0,2 2,0 0,1 4,0zM12,20a2,2 0,1 0,0 -4,2 2,0 0,0 0,4z" />
</vector>

@ -1,13 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M17.5 17c-2.1 0-3.5-2.5-5.5-2.5S8.4 17 6.5 17C3.9 17 2 14.6 2 10.4 2 7.8 2.8 7 6.1 7s4.3 1.4 5.9 1.4c1.6 0 2.6-1.4 5.9-1.4 3.3 0 4.1 0.8 4.1 3.4 0 4.2-1.9 6.6-4.5 6.6zm-9.8-6.8c-2 0.1-2.9 1.3-2.9 1.6 0 0.3 1.3 1.1 2.7 1.1 1.3 0 2.9-0.5 2.9-0.9 0-0.5-0.8-1.9-2.7-1.8zm8.6 0c-1.9-0.1-2.7 1.3-2.7 1.8 0 0.4 1.5 0.9 2.9 0.9s2.7-0.8 2.7-1.1c-0.1-0.3-0.9-1.5-2.9-1.6z" />
</vector>

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/tab_circle_icon_background" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/tab_circle_icon_foreground"
android:pathData="M15.22 22H5.78A3.78 3.78 0 0 1 2 18.22V8.78C2 6.69 3.7 5 5.78 5h9.44C17.31 5 19 6.7 19 8.78v9.44c0 2-1.7 3.78-3.78 3.78zM5.86 7C4.83 7 4 7.83 4 8.86v9.28C4 19.17 4.83 20 5.86 20h9.28c1 0 1.86-0.83 1.86-1.86V8.86C17 8 16.17 7 15 7H6zM6 4c0-1.1 1-2 2-2h8a6 6 0 0 1 6 6v0L22 16a2 2 0 0 1-2 2L20 8V8a4 4 0 0 0-4-4H6z"/>
</vector>
</item>
</layer-list>

@ -3,17 +3,17 @@
- License, v. 2.0. If a copy of the MPL was not distributed with this - License, v. 2.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, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_whats_new" /> <item android:drawable="@drawable/ic_whats_new" />
<item <item
android:left="200dp" android:left="200dp"
android:bottom="200dp"> android:bottom="200dp">
<shape <shape
android:shape="oval"> android:shape="oval">
<solid android:color="@color/whats_new_notification_color" /> <solid android:color="@color/whats_new_notification_color" />
<size <size
android:width="48dp" android:width="48dp"
android:height="48dp"/> android:height="48dp"/>
</shape> </shape>
</item> </item>
</layer-list> </layer-list>

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/library_app_links_icon_background" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/library_app_links_icon"
android:pathData="M4.5,7C3.12,7 2,5.88 2,4.5S3.12,2 4.5,2 7,3.12 7,4.5 5.88,7 4.5,7zM4.5,22C3.12,22 2,20.88 2,19.5S3.12,17 4.5,17 7,18.12 7,19.5 5.88,22 4.5,22zM4.5,14.5C3.12,14.5 2,13.38 2,12s1.12,-2.5 2.5,-2.5S7,10.62 7,12s-1.12,2.5 -2.5,2.5zM19.5,7C18.12,7 17,5.88 17,4.5S18.12,2 19.5,2 22,3.12 22,4.5 20.88,7 19.5,7zM19.5,22c-1.38,0 -2.5,-1.12 -2.5,-2.5s1.12,-2.5 2.5,-2.5 2.5,1.12 2.5,2.5 -1.12,2.5 -2.5,2.5zM19.5,14.5c-1.38,0 -2.5,-1.12 -2.5,-2.5s1.12,-2.5 2.5,-2.5S22,10.62 22,12s-1.12,2.5 -2.5,2.5zM12,7c-1.38,0 -2.5,-1.12 -2.5,-2.5S10.62,2 12,2s2.5,1.12 2.5,2.5S13.38,7 12,7zM12,22c-1.38,0 -2.5,-1.12 -2.5,-2.5S10.62,17 12,17s2.5,1.12 2.5,2.5S13.38,22 12,22zM12,14.5c-1.38,0 -2.5,-1.12 -2.5,-2.5s1.12,-2.5 2.5,-2.5 2.5,1.12 2.5,2.5 -1.12,2.5 -2.5,2.5z"
/>
</vector>
</item>
</layer-list>

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/library_downloads_icon_background" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/library_downloads_icon"
android:pathData="M11.3 17.7l-6-6a1 1 0 0 1 1.4-1.4l4.3 4.3V3a1 1 0 0 1 2 0v11.6l4.3-4.3a1 1 0 0 1 1.4 1.4l-6 6a1 1 0 0 1-1.4 0zM18 20a1 1 0 0 1 0 2H6a1 1 0 0 1 0-2h12z"/>
</vector>
</item>
</layer-list>

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/library_history_icon_background" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/library_history_icon"
android:pathData="M12 22a10 10 0 1 1 0-20 10 10 0 0 1 0 20zm0-18a8 8 0 1 0 0 16 8 8 0 0 0 0-16zm4.5 9h-5a0.5 0.5 0 0 1-0.5-0.5v-5a0.5 0.5 0 0 1 1 0V12h4.5a0.5 0.5 0 0 1 0 1z"/>
</vector>
</item>
</layer-list>

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/library_screenshots_icon_background" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/library_screenshots_icon"
android:pathData="M10.4 13.6l4.5-3.2c1.2-0.7 2.7-0.5 3.5 0.7L8 18.3l0.1 0.7a3 3 0 1 1-1.6-2.6L8.3 15l-1.9-1.4a3 3 0 1 1 1.5-2l2.5 1.9zm3.2 2.5l5.2 4c-0.9 1-2.4 1.2-3.5 0.4l-3.8-3 2.1-1.4zM5 12a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm0 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2zM5 7a1 1 0 0 1-1-1V5a3 3 0 0 1 3-3h4a1 1 0 0 1 0 2H7a1 1 0 0 0-1 1v1c0 0.6-0.4 1-1 1zm10-3a1 1 0 0 1 0-2h4a3 3 0 0 1 3 3v2a1 1 0 0 1-2 0V5c0-0.6-0.4-1-1-1h-4zm2 10h2c0.6 0 1-0.4 1-1v-2a1 1 0 0 1 2 0v2a3 3 0 0 1-3 3h-2a1 1 0 0 1 0-2z"/>
</vector>
</item>
</layer-list>

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="16dp"
android:height="16dp"
android:autoMirrored="true"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="#FF000000"
android:pathData="M2,1h20c1.1,0 2,0.9 2,2v18c0,1.1 -0.9,2 -2,2H2c-1.1,0 -2,-0.9 -2,-2V3c0,-1.1 0.9,-2 2,-2z" />
<path
android:fillColor="#FFF"
android:pathData="M12,3h9c0.6,0 1,0.4 1,1v16c0,0.6 -0.4,1 -1,1h-9L12,3zM5.5,12.5l2.7,-3.7c0.2,-0.3 0.6,-0.3 0.8,-0.1l0.7,0.5c0.2,0.2 0.2,0.5 0,0.7L5.8,15c-0.2,0.2 -0.5,0.3 -0.8,0.1l-2.2,-2.2c-0.2,-0.2 -0.2,-0.5 0,-0.7l0.8,-0.8c0.2,-0.2 0.5,-0.2 0.7,0l1.2,1.1z" />
<path
android:fillColor="#FF000000"
android:pathData="M15,9l-1,1 2,2 -2,2 1,1 2,-2 2,2 1,-1 -2,-2 2,-2 -1,-1 -2,2.01L15,9z" />
</vector>

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp"/>
<solid android:color="#ECBCFB"/>
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:pathData="M18.9,16.1c-0.5,0.4 -1,0.6 -1.5,0.8 -0.4,0.2 -0.9,0.3 -1.3,0.3 -0.6,0 -1.1,-0.2 -1.5,-0.6 -0.4,-0.4 -0.6,-0.9 -0.6,-1.6 0,-0.8 0.3,-1.3 0.9,-1.8 0.6,-0.5 1.9,-0.9 4.1,-1.3v-0.4c0,-0.6 -0.1,-1 -0.4,-1.3 -0.2,-0.3 -0.6,-0.4 -1.2,-0.4L17,9.8c-0.1,0 -0.3,0 -0.4,0.1v1.5h-1.5c-0.3,0 -0.4,0 -0.6,-0.1 -0.1,-0.1 -0.2,-0.2 -0.2,-0.5 0,-0.5 0.3,-0.9 1,-1.3s1.5,-0.6 2.5,-0.6c1.1,0 1.9,0.2 2.4,0.6 0.5,0.4 0.7,1.2 0.7,2.2L20.9,16l0.2,0.2 0.9,0.1v0.7h-2.9l-0.2,-0.9zM18.9,15.4v-2.6c-1.1,0.2 -1.8,0.5 -2.2,0.8 -0.4,0.3 -0.6,0.7 -0.6,1.1 0,0.4 0.1,0.7 0.3,0.9 0.2,0.2 0.5,0.3 0.9,0.3 0.2,0 0.4,0 0.7,-0.1 0.3,-0.1 0.6,-0.2 0.9,-0.4zM6.6,6h1.7L12,16l1,0.2v0.8L8.7,17v-0.8l1,-0.1 0.1,-0.2 -1,-2.8L5.3,13.1l-1,2.7 0.2,0.2 1,0.1v0.9L2,17v-0.8l1,-0.2L6.6,6zM7,8.2l-1.4,4h2.9L7,8.2z"
android:fillColor="#482166"
android:fillAlpha=".8"/>
</vector>
</item>
</layer-list>

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size
android:width="40dp"
android:height="40dp" />
<solid android:color="@color/quick_action_read_icon_background" />
</shape>
</item>
<item
android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/quick_action_read_icon"
android:pathData="M16.7 21H7.3A3.3 3.3 0 0 1 4 17.7V6.3C4 4.5 5.5 3 7.3 3h9.4C18.5 3 20 4.5 20 6.3v11.4c0 1.8-1.5 3.3-3.3 3.3zM7.3 5C6.6 5 6 5.6 6 6.3v11.4c0 0.7 0.6 1.3 1.3 1.3h9.4c0.7 0 1.3-0.6 1.3-1.3V6.3c0-0.7-0.6-1.3-1.3-1.3H7.3zM15 8H9a0.5 0.5 0 0 1 0-1h6a0.5 0.5 0 0 1 0 1zm0 3H9a0.5 0.5 0 0 1 0-1h6a0.5 0.5 0 0 1 0 1zm0 3H9a0.5 0.5 0 0 1 0-1h6a0.5 0.5 0 0 1 0 1zm-3.4 3H9a0.5 0.5 0 0 1 0-1h2.6a0.5 0.5 0 0 1 0 1z"/>
</vector>
</item>
</layer-list>

@ -1,25 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<size android:width="40dp"
android:height="40dp" />
<solid android:color="@color/quick_action_share_icon_background"/>
</shape>
</item>
<item android:bottom="8dp"
android:left="8dp"
android:right="8dp"
android:top="8dp">
<vector android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path android:fillColor="@color/quick_action_share_icon"
android:pathData="M17 14a3.99 3.99 0 0 0-2.91 1.27L9.87 13c0.17-0.63 0.17-1.3 0-1.94l4.22-2.3A4 4 0 1 0 13.13 7L8.91 9.27a4 4 0 1 0 0 5.46L13.13 17A4 4 0 1 0 17 14zm0-10a2 2 0 1 1 0 4 2 2 0 0 1 0-4zM6 14a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm11 6a2 2 0 1 1 0-4 2 2 0 0 1 0 4z"/>
</vector>
</item>
</layer-list>

@ -149,10 +149,11 @@
android:background="?android:attr/selectableItemBackgroundBorderless" android:background="?android:attr/selectableItemBackgroundBorderless"
android:contentDescription="@string/open_tabs_menu" android:contentDescription="@string/open_tabs_menu"
android:visibility="visible" android:visibility="visible"
app:tint="@color/accent_normal_theme"
app:layout_constraintBottom_toBottomOf="@id/tab_layout" app:layout_constraintBottom_toBottomOf="@id/tab_layout"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/tab_layout" app:layout_constraintTop_toTopOf="@id/tab_layout"
app:srcCompat="@drawable/ic_menu_tab_tray" /> app:srcCompat="@drawable/ic_menu" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<View <View

@ -74,6 +74,9 @@
android:transitionGroup="false" android:transitionGroup="false"
android:importantForAccessibility="no" android:importantForAccessibility="no"
android:overScrollMode="never" android:overScrollMode="never"
tools:listheader="@layout/collection_header"
tools:listitem="@layout/collection_home_list_row"
tools:itemCount="3"
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior"/> app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior"/>
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
@ -170,4 +173,4 @@
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout> </androidx.coordinatorlayout.widget.CoordinatorLayout>

@ -304,7 +304,8 @@
<fragment <fragment
android:id="@+id/bookmarkAddFolderFragment" android:id="@+id/bookmarkAddFolderFragment"
android:name="org.mozilla.fenix.library.bookmarks.addfolder.AddBookmarkFolderFragment" android:name="org.mozilla.fenix.library.bookmarks.addfolder.AddBookmarkFolderFragment"
android:label="@string/bookmark_add_folder_fragment_label"> android:label="@string/bookmark_add_folder_fragment_label"
tools:layout="@layout/fragment_edit_bookmark">
<action <action
android:id="@+id/action_bookmarkAddFolderFragment_to_bookmarkSelectFolderFragment" android:id="@+id/action_bookmarkAddFolderFragment_to_bookmarkSelectFolderFragment"
app:destination="@id/bookmarkSelectFolderFragment" /> app:destination="@id/bookmarkSelectFolderFragment" />
@ -388,7 +389,8 @@
<fragment <fragment
android:id="@+id/editLoginFragment" android:id="@+id/editLoginFragment"
android:name="org.mozilla.fenix.settings.logins.fragment.EditLoginFragment" android:name="org.mozilla.fenix.settings.logins.fragment.EditLoginFragment"
android:label="@string/edit"> android:label="@string/edit"
tools:layout="@layout/fragment_edit_login">
<argument <argument
android:name="savedLoginItem" android:name="savedLoginItem"
app:argType="org.mozilla.fenix.settings.logins.SavedLogin" app:argType="org.mozilla.fenix.settings.logins.SavedLogin"
@ -567,7 +569,8 @@
<fragment <fragment
android:id="@+id/turnOnSyncFragment" android:id="@+id/turnOnSyncFragment"
android:name="org.mozilla.fenix.settings.account.TurnOnSyncFragment" android:name="org.mozilla.fenix.settings.account.TurnOnSyncFragment"
android:label="@string/preferences_sync"> android:label="@string/preferences_sync"
tools:layout="@layout/fragment_turn_on_sync">
<argument <argument
android:name="padSnackbar" android:name="padSnackbar"
android:defaultValue="false" android:defaultValue="false"
@ -580,7 +583,8 @@
<fragment <fragment
android:id="@+id/pairFragment" android:id="@+id/pairFragment"
android:name="org.mozilla.fenix.settings.PairFragment" android:name="org.mozilla.fenix.settings.PairFragment"
android:label="@string/preferences_sync" /> android:label="@string/preferences_sync"
tools:layout="@layout/fragment_pair" />
<fragment <fragment
android:id="@+id/aboutFragment" android:id="@+id/aboutFragment"
@ -600,7 +604,8 @@
android:label="@string/preferences_debug_settings" /> android:label="@string/preferences_debug_settings" />
<fragment <fragment
android:id="@+id/crashReporterFragment" android:id="@+id/crashReporterFragment"
android:name="org.mozilla.fenix.crashes.CrashReporterFragment"> android:name="org.mozilla.fenix.crashes.CrashReporterFragment"
tools:layout="@layout/fragment_crash_reporter">
<argument <argument
android:name="crashIntent" android:name="crashIntent"
app:argType="android.content.Intent" /> app:argType="android.content.Intent" />
@ -638,11 +643,13 @@
<fragment <fragment
android:id="@+id/deleteBrowsingDataFragment" android:id="@+id/deleteBrowsingDataFragment"
android:name="org.mozilla.fenix.settings.deletebrowsingdata.DeleteBrowsingDataFragment" android:name="org.mozilla.fenix.settings.deletebrowsingdata.DeleteBrowsingDataFragment"
android:label="@string/preferences_delete_browsing_data" /> android:label="@string/preferences_delete_browsing_data"
tools:layout="@layout/fragment_delete_browsing_data" />
<fragment <fragment
android:id="@+id/trackingProtectionExceptionsFragment" android:id="@+id/trackingProtectionExceptionsFragment"
android:name="org.mozilla.fenix.exceptions.trackingprotection.TrackingProtectionExceptionsFragment" android:name="org.mozilla.fenix.exceptions.trackingprotection.TrackingProtectionExceptionsFragment"
android:label="@string/preference_exceptions" /> android:label="@string/preference_exceptions"
tools:layout="@layout/fragment_exceptions" />
<dialog <dialog
android:id="@+id/collectionCreationFragment" android:id="@+id/collectionCreationFragment"
android:name="org.mozilla.fenix.collections.CollectionCreationFragment" android:name="org.mozilla.fenix.collections.CollectionCreationFragment"
@ -704,7 +711,8 @@
</dialog> </dialog>
<dialog <dialog
android:id="@+id/quickSettingsSheetDialogFragment" android:id="@+id/quickSettingsSheetDialogFragment"
android:name="org.mozilla.fenix.settings.quicksettings.QuickSettingsSheetDialogFragment"> android:name="org.mozilla.fenix.settings.quicksettings.QuickSettingsSheetDialogFragment"
tools:layout="@layout/fragment_quick_settings_dialog_sheet">
<argument <argument
android:name="sessionId" android:name="sessionId"
app:argType="string" /> app:argType="string" />
@ -739,10 +747,12 @@
</fragment> </fragment>
<dialog <dialog
android:id="@+id/signOutFragment" android:id="@+id/signOutFragment"
android:name="org.mozilla.fenix.settings.account.SignOutFragment" /> android:name="org.mozilla.fenix.settings.account.SignOutFragment"
tools:layout="@layout/fragment_sign_out" />
<dialog <dialog
android:id="@+id/trackingProtectionPanelDialogFragment" android:id="@+id/trackingProtectionPanelDialogFragment"
android:name="org.mozilla.fenix.trackingprotection.TrackingProtectionPanelDialogFragment"> android:name="org.mozilla.fenix.trackingprotection.TrackingProtectionPanelDialogFragment"
tools:layout="@layout/fragment_tracking_protection">
<argument <argument
android:name="sessionId" android:name="sessionId"
app:argType="string" /> app:argType="string" />
@ -771,17 +781,20 @@
<fragment <fragment
android:id="@+id/addNewDeviceFragment" android:id="@+id/addNewDeviceFragment"
android:name="org.mozilla.fenix.share.AddNewDeviceFragment" /> android:name="org.mozilla.fenix.share.AddNewDeviceFragment"
tools:layout="@layout/fragment_add_new_device" />
<fragment <fragment
android:id="@+id/localeSettingsFragment" android:id="@+id/localeSettingsFragment"
android:name="org.mozilla.fenix.settings.advanced.LocaleSettingsFragment" /> android:name="org.mozilla.fenix.settings.advanced.LocaleSettingsFragment"
tools:layout="@layout/fragment_locale_settings" />
<fragment <fragment
android:id="@+id/saveLoginSettingFragment" android:id="@+id/saveLoginSettingFragment"
android:name="org.mozilla.fenix.settings.logins.fragment.SavedLoginsSettingFragment" android:name="org.mozilla.fenix.settings.logins.fragment.SavedLoginsSettingFragment"
android:label="SaveLoginSettingFragment" /> android:label="SaveLoginSettingFragment" />
<fragment <fragment
android:id="@+id/webExtensionActionPopupFragment" android:id="@+id/webExtensionActionPopupFragment"
android:name="org.mozilla.fenix.addons.WebExtensionActionPopupFragment"> android:name="org.mozilla.fenix.addons.WebExtensionActionPopupFragment"
tools:layout="@layout/fragment_add_on_internal_settings">
<argument <argument
android:name="webExtensionId" android:name="webExtensionId"
app:argType="string" /> app:argType="string" />
@ -792,7 +805,8 @@
</fragment> </fragment>
<dialog <dialog
android:id="@+id/tabHistoryDialogFragment" android:id="@+id/tabHistoryDialogFragment"
android:name="org.mozilla.fenix.tabhistory.TabHistoryDialogFragment" /> android:name="org.mozilla.fenix.tabhistory.TabHistoryDialogFragment"
tools:layout="@layout/fragment_tab_history_dialog" />
<navigation android:id="@+id/site_permissions_exceptions_graph" <navigation android:id="@+id/site_permissions_exceptions_graph"
app:startDestination="@id/sitePermissionsExceptionsFragment"> app:startDestination="@id/sitePermissionsExceptionsFragment">

@ -79,6 +79,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Nid nawr</string> <string name="search_widget_cfr_neg_button_text">Nid nawr</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Gallwch osod Firefox i agor dolenni mewn apiaun awtomatig.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Mynd i gosodiadau</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Cau</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">Mae angen mynediad ir camera. Ewch i osodiadau Android, tapiwch Permissions, a thapio Allow.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Mynd ir gosodiadau</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Cau</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Gosodwch dabiau agored sydd heb eu darllen yn ystod y diwrnod, yr wythnos neur mis diwethaf i gaun awtomatig.</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">Gweld y dewisiadau</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Cau</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Tab newydd</string> <string name="home_screen_shortcut_open_new_tab_2">Tab newydd</string>
@ -308,6 +330,9 @@
<!-- Preference for add_ons --> <!-- Preference for add_ons -->
<string name="preferences_addons">Ychwanegion</string> <string name="preferences_addons">Ychwanegion</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Hysbysiadau</string>
<!-- Account Preferences --> <!-- Account Preferences -->
<!-- Preference for triggering sync --> <!-- Preference for triggering sync -->
<string name="preferences_sync_now">Cydweddu nawr</string> <string name="preferences_sync_now">Cydweddu nawr</string>
@ -531,6 +556,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Tynnu</string> <string name="remove_top_site">Tynnu</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Dileu or hanes</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (Modd Preifat)</string> <string name="pwa_site_controls_title_private">%1$s (Modd Preifat)</string>
@ -575,6 +602,13 @@
<!-- Text shown when no history exists --> <!-- Text shown when no history exists -->
<string name="history_empty_message">Dim hanes yma</string> <string name="history_empty_message">Dim hanes yma</string>
<!-- Downloads -->
<!-- Text shown when no download exists -->
<string name="download_empty_message">Dim llwythi yma</string>
<!-- History multi select title in app bar
The first parameter is the number of downloads selected -->
<string name="download_multi_select_title">%1$d wediu dewis</string>
<!-- Crashes --> <!-- Crashes -->
<!-- Title text displayed on the tab crash page. This first parameter is the name of the application (For example: Fenix) --> <!-- 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">Ymddiheuriadau, nid yw %1$s yn gallu llwythor dudalen honno.</string> <string name="tab_crash_title_2">Ymddiheuriadau, nid yw %1$s yn gallu llwythor dudalen honno.</string>
@ -730,10 +764,8 @@
<string name="collections_header">Casgliadau</string> <string name="collections_header">Casgliadau</string>
<!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed -->
<string name="collection_menu_button_content_description">Dewislen casgliadau</string> <string name="collection_menu_button_content_description">Dewislen casgliadau</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Casglwch y pethau syn bwysig i chi</string>
<!-- Label to describe what collections are to a new user without any collections --> <!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Grwpiwch chwiliadau, gwefannau a thabiau tebyg ar gyfer mynediad cyflym yn y dyfodol.</string> <string name="no_collections_description2">Casglwch y pethau sydd o bwys i chi.\nCrynhowch ynghyd chwiliadau, gwefannau a thabiau tebyg i gael mynediad cyflym yn hwyrach.</string>
<!-- Title for the "select tabs" step of the collection creator --> <!-- Title for the "select tabs" step of the collection creator -->
<string name="create_collection_select_tabs">Dewis Tabiau</string> <string name="create_collection_select_tabs">Dewis Tabiau</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -980,9 +1012,10 @@ Fodd bynnag, gall fod yn llai sefydlog. Llwythwch ein porwr Beta i gael profiad
<string name="onboarding_whats_new_description">Oes gennych gwestiynau am y %s wediu hailgynllunio? Eisiau gwybod beth sydd wedi newid?</string> <string name="onboarding_whats_new_description">Oes gennych gwestiynau am y %s wediu hailgynllunio? Eisiau gwybod beth sydd wedi newid?</string>
<!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ --> <!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ -->
<string name="onboarding_whats_new_description_linktext">Cewch atebion yma</string> <string name="onboarding_whats_new_description_linktext">Cewch atebion yma</string>
<!-- text for the firefox account onboarding card header <!-- text for the Firefox account onboarding sign in card header -->
The first parameter is the name of the app (e.g. Firefox Preview) --> <string name="onboarding_account_sign_in_header">Cychwynnwch gydweddu nodau tudalen, cyfrineiriau, a rhagor gydach cyfrif Firefox.</string>
<string name="onboarding_firefox_account_header">Cael y gorau o %s.</string> <!-- Text for the button to learn more about signing in to your Firefox account -->
<string name="onboarding_manual_sign_in_learn_more">Dysgu rhagor</string>
<!-- text for the firefox account onboarding card header when we detect you're already signed in to <!-- text for the firefox account onboarding card header when we detect you're already signed in to
another Firefox browser. (The word `Firefox` should not be translated) another Firefox browser. (The word `Firefox` should not be translated)
The first parameter is the email of the detected user's account --> The first parameter is the email of the detected user's account -->
@ -1472,6 +1505,9 @@ Fodd bynnag, gall fod yn llai sefydlog. Llwythwch ein porwr Beta i gael profiad
<!-- Text displayed on a button in the synced tabs screen to link users to sign in when a user is not signed in to Firefox Sync --> <!-- Text displayed on a button in the synced tabs screen to link users to sign in when a user is not signed in to Firefox Sync -->
<string name="synced_tabs_sign_in_button">Mewngofnodi i gydweddu</string> <string name="synced_tabs_sign_in_button">Mewngofnodi i gydweddu</string>
<!-- The text displayed when a synced device has no tabs to show in the list of Synced Tabs. -->
<string name="synced_tabs_no_open_tabs">Dim tabiau agored</string>
<!-- Top Sites --> <!-- Top Sites -->
<!-- Title text displayed in the dialog when top sites limit is reached. --> <!-- Title text displayed in the dialog when top sites limit is reached. -->
<string name="top_sites_max_limit_title">Wedi cyrraedd terfyn nifer eich hoff wefannau</string> <string name="top_sites_max_limit_title">Wedi cyrraedd terfyn nifer eich hoff wefannau</string>
@ -1480,4 +1516,15 @@ Fodd bynnag, gall fod yn llai sefydlog. Llwythwch ein porwr Beta i gael profiad
<!-- Confirmation dialog button text when top sites limit is reached. --> <!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">Iawn, Wedi deall!</string> <string name="top_sites_max_limit_confirmation_button">Iawn, Wedi deall!</string>
</resources> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Tynnu</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Cael y gorau o %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Casglwch y pethau syn bwysig i chi</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Grwpiwch chwiliadau, gwefannau a thabiau tebyg ar gyfer mynediad cyflym yn y dyfodol.</string>
</resources>

@ -78,6 +78,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Ikke nu</string> <string name="search_widget_cfr_neg_button_text">Ikke nu</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Du kan sætte Firefox til automatisk at åbne links i apps.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Gå til indstillinger</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Afvis</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">Adgang til kamera er nødvendig. Gå til Indstillinger i Android, tryk på Tilladelser, og tryk så på Tillad.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Gå til indstillinger</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Afvis</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Luk automatisk åbne faneblade, hvis de ikke har været vist den seneste dag, uge eller måned.</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">Vis indstillinger</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Afvis</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Nyt faneblad</string> <string name="home_screen_shortcut_open_new_tab_2">Nyt faneblad</string>
@ -298,10 +320,15 @@
<!-- Preference for account settings --> <!-- Preference for account settings -->
<string name="preferences_account_settings">Kontoindstillinger</string> <string name="preferences_account_settings">Kontoindstillinger</string>
<!-- Preference for open links in third party apps --> <!-- Preference for open links in third party apps -->
<string name="preferences_open_links_in_apps">Åbn links i app</string> <string name="preferences_open_links_in_apps">Åbn links i apps</string>
<!-- Preference for open download with an external download manager app -->
<string name="preferences_external_download_manager">Ekstern håndtering af filhentning</string>
<!-- Preference for add_ons --> <!-- Preference for add_ons -->
<string name="preferences_addons">Tilføjelser</string> <string name="preferences_addons">Tilføjelser</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Meddelelser</string>
<!-- Account Preferences --> <!-- Account Preferences -->
<!-- Preference for triggering sync --> <!-- Preference for triggering sync -->
<string name="preferences_sync_now">Synkroniser nu</string> <string name="preferences_sync_now">Synkroniser nu</string>
@ -341,7 +368,7 @@
<!-- Name of the "receive tabs" notification channel. Displayed in the "App notifications" system settings for the app --> <!-- Name of the "receive tabs" notification channel. Displayed in the "App notifications" system settings for the app -->
<string name="fxa_received_tab_channel_name">Modtagne faneblade</string> <string name="fxa_received_tab_channel_name">Modtagne faneblade</string>
<!-- Description of the "receive tabs" notification channel. Displayed in the "App notifications" system settings for the app --> <!-- Description of the "receive tabs" notification channel. Displayed in the "App notifications" system settings for the app -->
<string name="fxa_received_tab_channel_description">Notifikationer for faneblade modtaget fra andre Firefox-enheder.</string> <string name="fxa_received_tab_channel_description">Meddelelser for faneblade modtaget fra andre Firefox-enheder.</string>
<!-- The body for these is the URL of the tab received --> <!-- The body for these is the URL of the tab received -->
<string name="fxa_tab_received_notification_name">Modtaget faneblad</string> <string name="fxa_tab_received_notification_name">Modtaget faneblad</string>
<!-- When multiple tabs have been received --> <!-- When multiple tabs have been received -->
@ -524,6 +551,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Fjern</string> <string name="remove_top_site">Fjern</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Slet fra historik</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (Privat tilstand)</string> <string name="pwa_site_controls_title_private">%1$s (Privat tilstand)</string>
@ -568,6 +597,13 @@
<!-- Text shown when no history exists --> <!-- Text shown when no history exists -->
<string name="history_empty_message">Ingen historik</string> <string name="history_empty_message">Ingen historik</string>
<!-- Downloads -->
<!-- Text shown when no download exists -->
<string name="download_empty_message">Ingen filhentninger her</string>
<!-- History multi select title in app bar
The first parameter is the number of downloads selected -->
<string name="download_multi_select_title">%1$d valgt</string>
<!-- Crashes --> <!-- Crashes -->
<!-- Title text displayed on the tab crash page. This first parameter is the name of the application (For example: Fenix) --> <!-- 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 kan ikke indlæse siden.</string> <string name="tab_crash_title_2">%1$s kan ikke indlæse siden.</string>
@ -686,7 +722,7 @@
<!-- Preference for altering the location access for all websites --> <!-- Preference for altering the location access for all websites -->
<string name="preference_phone_feature_location">Position</string> <string name="preference_phone_feature_location">Position</string>
<!-- Preference for altering the notification access for all websites --> <!-- Preference for altering the notification access for all websites -->
<string name="preference_phone_feature_notification">Notifikation</string> <string name="preference_phone_feature_notification">Meddelelser</string>
<!-- Label that indicates that a permission must be asked always --> <!-- Label that indicates that a permission must be asked always -->
<string name="preference_option_phone_feature_ask_to_allow">Spørg om tilladelse</string> <string name="preference_option_phone_feature_ask_to_allow">Spørg om tilladelse</string>
<!-- Label that indicates that a permission must be blocked --> <!-- Label that indicates that a permission must be blocked -->
@ -721,10 +757,8 @@
<string name="collections_header">Samlinger</string> <string name="collections_header">Samlinger</string>
<!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed -->
<string name="collection_menu_button_content_description">Samlings-menu</string> <string name="collection_menu_button_content_description">Samlings-menu</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Saml de ting, der betyder noget for dig</string>
<!-- Label to describe what collections are to a new user without any collections --> <!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Saml relaterede søgninger, websteder og faneblade i grupper. Så kan du hurtigt finde dem igen.</string> <string name="no_collections_description2">Saml de ting, der betyder noget for dig.\nSaml relaterede søgninger, websteder og faneblade i grupper. Så kan du hurtigt finde dem igen.</string>
<!-- Title for the "select tabs" step of the collection creator --> <!-- Title for the "select tabs" step of the collection creator -->
<string name="create_collection_select_tabs">Vælg faneblade</string> <string name="create_collection_select_tabs">Vælg faneblade</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -878,7 +912,7 @@
<string name="preference_accessibility_auto_size_summary">Skriftstørrelsen vil være den samme som i dine Android-indstillinger. Deaktiver for selv at indstille skriftstørrelse her.</string> <string name="preference_accessibility_auto_size_summary">Skriftstørrelsen vil være den samme som i dine Android-indstillinger. Deaktiver for selv at indstille skriftstørrelse her.</string>
<!-- Title for the Delete browsing data preference --> <!-- Title for the Delete browsing data preference -->
<string name="preferences_delete_browsing_data">Slet browser-data</string> <string name="preferences_delete_browsing_data">Slet browserdata</string>
<!-- Title for the tabs item in Delete browsing data --> <!-- Title for the tabs item in Delete browsing data -->
<string name="preferences_delete_browsing_data_tabs_title_2">Åbne faneblade</string> <string name="preferences_delete_browsing_data_tabs_title_2">Åbne faneblade</string>
<!-- Subtitle for the tabs item in Delete browsing data, parameter will be replaced with the number of open tabs --> <!-- Subtitle for the tabs item in Delete browsing data, parameter will be replaced with the number of open tabs -->
@ -971,9 +1005,10 @@
<string name="onboarding_whats_new_description">Har du spørgsmål om den nye version af %s? Vil du vide, hvad der er ændret?</string> <string name="onboarding_whats_new_description">Har du spørgsmål om den nye version af %s? Vil du vide, hvad der er ændret?</string>
<!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ --> <!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ -->
<string name="onboarding_whats_new_description_linktext">Få svar her</string> <string name="onboarding_whats_new_description_linktext">Få svar her</string>
<!-- text for the firefox account onboarding card header <!-- text for the Firefox account onboarding sign in card header -->
The first parameter is the name of the app (e.g. Firefox Preview) --> <string name="onboarding_account_sign_in_header">Begynd at synkronisere bogmærker, adgangskoder m.m. med din Firefox-konto.</string>
<string name="onboarding_firefox_account_header">Få det meste ud af %s.</string> <!-- Text for the button to learn more about signing in to your Firefox account -->
<string name="onboarding_manual_sign_in_learn_more">Læs mere</string>
<!-- text for the firefox account onboarding card header when we detect you're already signed in to <!-- text for the firefox account onboarding card header when we detect you're already signed in to
another Firefox browser. (The word `Firefox` should not be translated) another Firefox browser. (The word `Firefox` should not be translated)
The first parameter is the email of the detected user's account --> The first parameter is the email of the detected user's account -->
@ -1458,6 +1493,9 @@
<!-- Text displayed on a button in the synced tabs screen to link users to sign in when a user is not signed in to Firefox Sync --> <!-- Text displayed on a button in the synced tabs screen to link users to sign in when a user is not signed in to Firefox Sync -->
<string name="synced_tabs_sign_in_button">Log ind på Sync</string> <string name="synced_tabs_sign_in_button">Log ind på Sync</string>
<!-- The text displayed when a synced device has no tabs to show in the list of Synced Tabs. -->
<string name="synced_tabs_no_open_tabs">Ingen åbne faneblade</string>
<!-- Top Sites --> <!-- Top Sites -->
<!-- Title text displayed in the dialog when top sites limit is reached. --> <!-- Title text displayed in the dialog when top sites limit is reached. -->
<string name="top_sites_max_limit_title">Grænsen for Mest besøgte websider er nået</string> <string name="top_sites_max_limit_title">Grænsen for Mest besøgte websider er nået</string>
@ -1466,4 +1504,15 @@
<!-- Confirmation dialog button text when top sites limit is reached. --> <!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">Ok, forstået</string> <string name="top_sites_max_limit_confirmation_button">Ok, forstået</string>
<!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Fjern</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Få det meste ud af %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Saml de ting, der betyder noget for dig</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Saml relaterede søgninger, websteder og faneblade i grupper. Så kan du hurtigt finde dem igen.</string>
</resources> </resources>

@ -82,6 +82,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Jetzt nicht</string> <string name="search_widget_cfr_neg_button_text">Jetzt nicht</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Sie können Firefox so einstellen, dass Links automatisch in Apps geöffnet werden.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Einstellungen öffnen</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Schließen</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">Kamerazugriff erforderlich. Öffnen Sie die Android-Einstellungen, tippen Sie auf Berechtigungen und tippen Sie auf Erlauben.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Einstellungen öffnen</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Schließen</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Stellen Sie geöffnete Tabs so ein, dass sie automatisch geschlossen werden, die am letzten Tag, in der letzten Woche oder im letzten Monat nicht angesehen wurden.</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">Optionen anzeigen</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Schließen</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Neuer Tab</string> <string name="home_screen_shortcut_open_new_tab_2">Neuer Tab</string>
@ -545,6 +567,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Entfernen</string> <string name="remove_top_site">Entfernen</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Aus Chronik löschen</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (Privater Modus)</string> <string name="pwa_site_controls_title_private">%1$s (Privater Modus)</string>
@ -1527,4 +1551,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Entfernen</string> <string name="remove_home_collection_placeholder_content_description">Entfernen</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Machen Sie das Beste aus %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Sammeln Sie die Dinge, die Ihnen wichtig sind</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Gruppieren Sie ähnliche Suchanfragen, Websites und Tabs, um später schnell darauf zugreifen zu können.</string>
</resources> </resources>

@ -79,6 +79,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Not now</string> <string name="search_widget_cfr_neg_button_text">Not now</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">You can set Firefox to automatically open links in apps.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Go to settings</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Dismiss</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">Camera access needed. Go to Android settings, tap permissions, and tap allow.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Go to settings</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Dismiss</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Set open tabs to close automatically that havent been viewed in the past day, week, or month.</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">View options</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Dismiss</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">New tab</string> <string name="home_screen_shortcut_open_new_tab_2">New tab</string>
@ -531,6 +553,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Remove</string> <string name="remove_top_site">Remove</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Delete from history</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (Private Mode)</string> <string name="pwa_site_controls_title_private">%1$s (Private Mode)</string>
@ -1484,4 +1508,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Remove</string> <string name="remove_home_collection_placeholder_content_description">Remove</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Get the most out of %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Collect the things that matter to you</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Group together similar searches, sites, and tabs for quick access later.</string>
</resources> </resources>

@ -80,6 +80,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Ahora no</string> <string name="search_widget_cfr_neg_button_text">Ahora no</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Podés configurar Firefox para que abra automáticamente enlaces en aplicaciones.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Ir a Ajustes</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Descartar</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">Se necesita acceso a la cámara. Andá a la configuración de Android, pulsá permisos y permitir.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Ir a Ajustes</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Descartar</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Configurar las pestañas abiertas para que se cierren automáticamente las que no se hayan visto en el último día, semana o mes.</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">Ver opciones</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Descartar</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Nueva pestaña</string> <string name="home_screen_shortcut_open_new_tab_2">Nueva pestaña</string>
@ -550,6 +572,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Eliminar</string> <string name="remove_top_site">Eliminar</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Eliminar del historial</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (modo privado)</string> <string name="pwa_site_controls_title_private">%1$s (modo privado)</string>
@ -759,10 +783,8 @@
<string name="collections_header">Colecciones</string> <string name="collections_header">Colecciones</string>
<!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed -->
<string name="collection_menu_button_content_description">Menú de colecciones</string> <string name="collection_menu_button_content_description">Menú de colecciones</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Recolectá lo que te importa</string>
<!-- Label to describe what collections are to a new user without any collections --> <!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Agrupar búsquedas, sitios y pestañas similares para acceder rápidamente más tarde.</string> <string name="no_collections_description2">Recolectá lo que te importa.\nAgrupá búsquedas, sitios y pestañas similares para un acceso rápido más tarde.</string>
<!-- Title for the "select tabs" step of the collection creator --> <!-- Title for the "select tabs" step of the collection creator -->
<string name="create_collection_select_tabs">Seleccionar pestañas</string> <string name="create_collection_select_tabs">Seleccionar pestañas</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -1010,8 +1032,8 @@
<string name="onboarding_whats_new_description">¿Tenés preguntas sobre el rediseño de %s? ¿Querés saber qué cambió?</string> <string name="onboarding_whats_new_description">¿Tenés preguntas sobre el rediseño de %s? ¿Querés saber qué cambió?</string>
<!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ --> <!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ -->
<string name="onboarding_whats_new_description_linktext">Las respuestas están aquí</string> <string name="onboarding_whats_new_description_linktext">Las respuestas están aquí</string>
<!-- text for the firefox account onboarding card header --> <!-- text for the Firefox account onboarding sign in card header -->
<string name="onboarding_firefox_account_header">Aprovechá %s al máximo.</string> <string name="onboarding_account_sign_in_header">Empezá a sincronizar marcadores, contraseñas y más con tu Cuenta de Firefox.</string>
<!-- Text for the button to learn more about signing in to your Firefox account --> <!-- Text for the button to learn more about signing in to your Firefox account -->
<string name="onboarding_manual_sign_in_learn_more">Conocer más</string> <string name="onboarding_manual_sign_in_learn_more">Conocer más</string>
<!-- text for the firefox account onboarding card header when we detect you're already signed in to <!-- text for the firefox account onboarding card header when we detect you're already signed in to
@ -1515,4 +1537,15 @@
<!-- Confirmation dialog button text when top sites limit is reached. --> <!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">Listo, lo entendí.</string> <string name="top_sites_max_limit_confirmation_button">Listo, lo entendí.</string>
<!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Eliminar</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Aprovechá %s al máximo.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Recolectá lo que te importa</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Agrupar búsquedas, sitios y pestañas similares para acceder rápidamente más tarde.</string>
</resources> </resources>

@ -80,6 +80,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Ei nyt</string> <string name="search_widget_cfr_neg_button_text">Ei nyt</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Voit asettaa Firefoxin avaamaan linkit automaattisesti sovelluksissa.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Siirry asetuksiin</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Hylkää</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">Kameran käyttöoikeus vaaditaan. Siirry Androidin asetuksiin, napauta käyttöoikeudet ja napauta salli.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Siirry asetuksiin</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Hylkää</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Aseta avoimet välilehdet sulkeutumaan automaattisesti, jos niitä ei ole katsottu viimeisen päivän, viikon tai kuukauden aikana.</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">Näytä valinnat</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Hylkää</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Uusi välilehti</string> <string name="home_screen_shortcut_open_new_tab_2">Uusi välilehti</string>
@ -542,6 +564,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Poista</string> <string name="remove_top_site">Poista</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Poista historiasta</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (yksityinen tila)</string> <string name="pwa_site_controls_title_private">%1$s (yksityinen tila)</string>
@ -1510,4 +1534,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Poista</string> <string name="remove_home_collection_placeholder_content_description">Poista</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Ota kaikki irti %sista.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Kerää yhteen sinulle tärkeät asiat</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Kokoa yhteen samanlaiset haut, sivustot ja välilehdet nopeaa käyttöä varten.</string>
</resources> </resources>

@ -80,6 +80,21 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Nic nětko</string> <string name="search_widget_cfr_neg_button_text">Nic nětko</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">K nastajenjam</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Zaćisnyć</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">K nastajenjam</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Zaćisnyć</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">Nastajenja pokazać</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Zaćisnyć</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Nowy rajtark</string> <string name="home_screen_shortcut_open_new_tab_2">Nowy rajtark</string>
@ -536,6 +551,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Wotstronić</string> <string name="remove_top_site">Wotstronić</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Z historije zhašeć</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (priwatny modus)</string> <string name="pwa_site_controls_title_private">%1$s (priwatny modus)</string>
@ -1497,4 +1514,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Wotstronić</string> <string name="remove_home_collection_placeholder_content_description">Wotstronić</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Wućehńće najlěpše z %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Zběrajće wěcy, kotrež su wam wažne</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Zeskupće podobne pytanja, sydła a rajtarki za pozdźiši spěšny přistup.</string>
</resources> </resources>

@ -79,6 +79,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Most nem</string> <string name="search_widget_cfr_neg_button_text">Most nem</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Beállíthatja, hogy a Firefox automatikusan alkalmazásokban nyisson meg hivatkozásokat.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Ugrás a beállításokhoz</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Eltüntetés</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">Kamera-hozzáférés szükséges. Ugorjon az Android beállításokhoz, koppintson az engedélyekre, majd az engedélyezésre.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Ugrás a beállításokhoz</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Eltüntetés</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Beállíthatja, hogy a nyitott lapok automatikusan bezáródjanak, ha nem nézte meg azokat az elmúlt napon, héten vagy hónapban.</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">Beállítások megtekintése</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Eltüntetés</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Új lap</string> <string name="home_screen_shortcut_open_new_tab_2">Új lap</string>
@ -539,6 +561,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Eltávolítás</string> <string name="remove_top_site">Eltávolítás</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Törlés az előzményekből</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (privát mód)</string> <string name="pwa_site_controls_title_private">%1$s (privát mód)</string>
@ -1507,4 +1531,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Eltávolítás</string> <string name="remove_home_collection_placeholder_content_description">Eltávolítás</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Hozza ki a legtöbbet a %s böngészőből.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Gyűjtse össze az Önnek fontos dolgokat</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Csoportosítsa a hasonló kereséseket, webhelyeket és lapokat a későbbi gyors elérés érdekében.</string>
</resources> </resources>

@ -757,10 +757,8 @@
<!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed -->
<string name="collection_menu_button_content_description">Menu raccolta</string> <string name="collection_menu_button_content_description">Menu raccolta</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Raggruppa i tuoi interessi</string>
<!-- Label to describe what collections are to a new user without any collections --> <!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Raggruppa ricerche, siti e schede simili tra loro per potervi accedere più rapidamente in un secondo tempo.</string> <string name="no_collections_description2">Raccogli gli argomenti che ti interessano.\nRaggruppa ricerche, siti e schede simili per accedervi rapidamente in seguito.</string>
<!-- Title for the "select tabs" step of the collection creator --> <!-- Title for the "select tabs" step of the collection creator -->
<string name="create_collection_select_tabs">Seleziona schede</string> <string name="create_collection_select_tabs">Seleziona schede</string>
@ -1027,8 +1025,8 @@
<string name="onboarding_whats_new_description">Hai domande sul nuovo %s? Vuoi scoprire che cosa è cambiato?</string> <string name="onboarding_whats_new_description">Hai domande sul nuovo %s? Vuoi scoprire che cosa è cambiato?</string>
<!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ --> <!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ -->
<string name="onboarding_whats_new_description_linktext">Trova tutte le risposte qui</string> <string name="onboarding_whats_new_description_linktext">Trova tutte le risposte qui</string>
<!-- text for the firefox account onboarding card header --> <!-- text for the Firefox account onboarding sign in card header -->
<string name="onboarding_firefox_account_header">Ottieni il massimo da %s.</string> <string name="onboarding_account_sign_in_header">Inizia a sincronizzare segnalibri, password e molto altro ancora con il tuo account Firefox.</string>
<!-- Text for the button to learn more about signing in to your Firefox account --> <!-- Text for the button to learn more about signing in to your Firefox account -->
<string name="onboarding_manual_sign_in_learn_more">Ulteriori informazioni</string> <string name="onboarding_manual_sign_in_learn_more">Ulteriori informazioni</string>
<!-- text for the firefox account onboarding card header when we detect you're already signed in to <!-- text for the firefox account onboarding card header when we detect you're already signed in to
@ -1530,4 +1528,6 @@
<!-- Confirmation dialog button text when top sites limit is reached. --> <!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">OK, tutto chiaro</string> <string name="top_sites_max_limit_confirmation_button">OK, tutto chiaro</string>
</resources> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Elimina</string>
</resources>

@ -78,6 +78,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">לא כעת</string> <string name="search_widget_cfr_neg_button_text">לא כעת</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">באפשרותך להגדיר ש־Firefox יפתח קישורים ביישומים באופן אוטומטי.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">מעבר להגדרות</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">סגירה</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">דרושה גישה למצלמה. יש לעבור להגדרות ה־Android, להקיש על הרשאות ולאחר מכן על ״לאפשר״.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">מעבר להגדרות</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">סגירה</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">ניתן להגדיר שלשוניות פתוחות ייסגרו באופן אוטומטי אם לא נצפו ביממה, שבוע או חודש האחרון.</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">הצגת אפשרויות</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">סגירה</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">לשונית חדשה</string> <string name="home_screen_shortcut_open_new_tab_2">לשונית חדשה</string>
@ -526,6 +548,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">הסרה</string> <string name="remove_top_site">הסרה</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">מחיקה מההיסטוריה</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (מצב פרטי)</string> <string name="pwa_site_controls_title_private">%1$s (מצב פרטי)</string>
@ -1472,4 +1496,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">הסרה</string> <string name="remove_home_collection_placeholder_content_description">הסרה</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">להוציא את המיטב מ־%s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">לאסוף את הדברים החשובים לך</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">ניתן לקבץ חיפושים, אתרים ולשוניות דומים יחד כדי לגשת אליהם מהר יותר בהמשך.</string>
</resources> </resources>

@ -77,6 +77,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">ახლა არა</string> <string name="search_widget_cfr_neg_button_text">ახლა არა</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">თუ მიუთითებთ, Firefox თავადვე გახსნის ბმულებს სხვა აპებში.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">პარამეტრებზე გადასვლა</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">გამოტოვება</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">კამერასთან წვდომაა საჭირო. გადადით Android-პარამეტრებში, შეეხეთ ნებართვებს და შემდეგ დაშვებას.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">პარამეტრებზე გადასვლა</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">გამოტოვება</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">მიუთითეთ, დაიხუროს გახსნილი ჩანართები, რომლებიც არ მოგინახულებიათ წინა დღეს, წინა კვირას ან წინა თვეს.</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">პარამეტრების გახსნა</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">გამოტოვება</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">ახალი ჩანართი</string> <string name="home_screen_shortcut_open_new_tab_2">ახალი ჩანართი</string>
@ -306,6 +328,9 @@
<!-- Preference for add_ons --> <!-- Preference for add_ons -->
<string name="preferences_addons">დამატებები</string> <string name="preferences_addons">დამატებები</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">შეტყობინებები</string>
<!-- Account Preferences --> <!-- Account Preferences -->
<!-- Preference for triggering sync --> <!-- Preference for triggering sync -->
<string name="preferences_sync_now">დასინქრონება ახლავე</string> <string name="preferences_sync_now">დასინქრონება ახლავე</string>
@ -529,6 +554,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">მოცილება</string> <string name="remove_top_site">მოცილება</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">ისტორიიდან ამოშლა</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (პირადი რეჟიმი)</string> <string name="pwa_site_controls_title_private">%1$s (პირადი რეჟიმი)</string>
@ -574,6 +601,13 @@
<!-- Text shown when no history exists --> <!-- Text shown when no history exists -->
<string name="history_empty_message">ისტორია არ არის</string> <string name="history_empty_message">ისტორია არ არის</string>
<!-- Downloads -->
<!-- Text shown when no download exists -->
<string name="download_empty_message">ჩამოტვირთვები არაა</string>
<!-- History multi select title in app bar
The first parameter is the number of downloads selected -->
<string name="download_multi_select_title">შერჩეულია %1$d</string>
<!-- Crashes --> <!-- Crashes -->
<!-- Title text displayed on the tab crash page. This first parameter is the name of the application (For example: Fenix) --> <!-- 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>
@ -729,10 +763,8 @@
<string name="collections_header">კრებულები</string> <string name="collections_header">კრებულები</string>
<!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed -->
<string name="collection_menu_button_content_description">კრებულის მენიუ</string> <string name="collection_menu_button_content_description">კრებულის მენიუ</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">შეაგროვეთ, რაც თქვენთვის მნიშვნელოვანია</string>
<!-- Label to describe what collections are to a new user without any collections --> <!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">თავი მოუყარეთ მოძიებულ მასალებს, საიტებს, ჩანართებს, სწრაფი წვდომისთვის.</string> <string name="no_collections_description2">შეაგროვეთ, რაც თქვენთვის ღირებულია.\nთავი მოუყარეთ მოძიებულ მასალებს, საიტებს და ჩანართებს, მომავალში სწრაფი წვდომისთვის.</string>
<!-- Title for the "select tabs" step of the collection creator --> <!-- Title for the "select tabs" step of the collection creator -->
<string name="create_collection_select_tabs">ჩანართების შერჩევა</string> <string name="create_collection_select_tabs">ჩანართების შერჩევა</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -979,9 +1011,10 @@
<string name="onboarding_whats_new_description">გაინტერესებთ როგორ შეიცვალა %s გარეგნულად? გსურთ გაეცნოთ ცვლილებებს?</string> <string name="onboarding_whats_new_description">გაინტერესებთ როგორ შეიცვალა %s გარეგნულად? გსურთ გაეცნოთ ცვლილებებს?</string>
<!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ --> <!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ -->
<string name="onboarding_whats_new_description_linktext">მიიღეთ პასუხები აქ</string> <string name="onboarding_whats_new_description_linktext">მიიღეთ პასუხები აქ</string>
<!-- text for the firefox account onboarding card header <!-- text for the Firefox account onboarding sign in card header -->
The first parameter is the name of the app (e.g. Firefox Preview) --> <string name="onboarding_account_sign_in_header">დაიწყეთ დასინქრონება სანიშნების, პაროლებისა და სხვა მონაცემების, თქვენი Firefox-ანგარიშის მეშვეობით.</string>
<string name="onboarding_firefox_account_header">სრულყოფილად გამოიყენეთ %s.</string> <!-- Text for the button to learn more about signing in to your Firefox account -->
<string name="onboarding_manual_sign_in_learn_more">ვრცლად</string>
<!-- text for the firefox account onboarding card header when we detect you're already signed in to <!-- text for the firefox account onboarding card header when we detect you're already signed in to
another Firefox browser. (The word `Firefox` should not be translated) another Firefox browser. (The word `Firefox` should not be translated)
The first parameter is the email of the detected user's account --> The first parameter is the email of the detected user's account -->
@ -1475,6 +1508,9 @@
<!-- Text displayed on a button in the synced tabs screen to link users to sign in when a user is not signed in to Firefox Sync --> <!-- Text displayed on a button in the synced tabs screen to link users to sign in when a user is not signed in to Firefox Sync -->
<string name="synced_tabs_sign_in_button">სინქრონიზაციაში შესვლა</string> <string name="synced_tabs_sign_in_button">სინქრონიზაციაში შესვლა</string>
<!-- The text displayed when a synced device has no tabs to show in the list of Synced Tabs. -->
<string name="synced_tabs_no_open_tabs">გახსნილი ჩანართები არაა</string>
<!-- Top Sites --> <!-- Top Sites -->
<!-- Title text displayed in the dialog when top sites limit is reached. --> <!-- Title text displayed in the dialog when top sites limit is reached. -->
<string name="top_sites_max_limit_title">რჩეული საიტების ზღვარი მიღწეულია</string> <string name="top_sites_max_limit_title">რჩეული საიტების ზღვარი მიღწეულია</string>
@ -1483,4 +1519,15 @@
<!-- Confirmation dialog button text when top sites limit is reached. --> <!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">კარგი, გასაგებია</string> <string name="top_sites_max_limit_confirmation_button">კარგი, გასაგებია</string>
</resources> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">მოცილება</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">სრულყოფილად გამოიყენეთ %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">შეაგროვეთ, რაც თქვენთვის ღირებულია</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">თავი მოუყარეთ მოძიებულ მასალებს, საიტებს, ჩანართებს, სწრაფი წვდომისთვის.</string>
</resources>

@ -82,6 +82,28 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Mačči tura</string> <string name="search_widget_cfr_neg_button_text">Mačči tura</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Tzemreḍ ad tesbaduḍ akken ad yeldi iseɣwan s wudem awurman deg isnasen.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Ddu ɣer iɣewwaṛen</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Zgel</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">Isɛa anekcum ɣer tkamiṛat. Ddu ɣer iɣewwaṛen Android, sit ɣef tisirag, sakin senned sireg.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Ddu ɣer iɣewwaṛen</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Zgel</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Sbadu amdel awurman n icarren yeldin ur twalaḍ ara deg ussan, imalasen, agguren ineggura.</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">Wali iɣewwaṛen</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Zgel</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Iccer amaynut</string> <string name="home_screen_shortcut_open_new_tab_2">Iccer amaynut</string>
@ -540,6 +562,8 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Kkes</string> <string name="remove_top_site">Kkes</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Kkes seg umazray</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (askar uslig)</string> <string name="pwa_site_controls_title_private">%1$s (askar uslig)</string>
@ -1509,4 +1533,13 @@ Tiktiwin tigejdanin yuzzlen ur nṣeḥḥi ara
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Kkes</string> <string name="remove_home_collection_placeholder_content_description">Kkes</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Awi %s amaynut akk.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Lqeḍ tiɣawsiwin i tḥemmleḍ</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Segrew akk akken inadiyen, ismal d waccaren yemṣadan akken ad yishil unekcum ɣer-sen mbeεd.</string>
</resources> </resources>

@ -86,6 +86,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">나중에</string> <string name="search_widget_cfr_neg_button_text">나중에</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">앱에서 링크를 자동으로 열도록 Firefox를 설정할 수 있습니다.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">설정으로 이동</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">닫기</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">카메라 액세스가 필요합니다. Android 설정으로 이동하여 권한을 누른 다음 허용을 누르세요.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">설정으로 이동</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">닫기</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">지난 일, 주 또는 월 동안 보지 않은 열린 탭을 자동으로 닫도록 설정하세요.</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">옵션 보기</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">닫기</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">새 탭</string> <string name="home_screen_shortcut_open_new_tab_2">새 탭</string>
@ -551,6 +573,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">삭제</string> <string name="remove_top_site">삭제</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">기록에서 삭제</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (사생활 보호 모드)</string> <string name="pwa_site_controls_title_private">%1$s (사생활 보호 모드)</string>
@ -1545,4 +1569,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">삭제</string> <string name="remove_home_collection_placeholder_content_description">삭제</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">%s를 최대한 활용해 보세요.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">중요한 것들 수집하기</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">나중에 빠르게 접근할 수 있도록 유사한 검색, 사이트 및 탭을 모아 보세요.</string>
</resources> </resources>

@ -81,6 +81,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Ikke nå</string> <string name="search_widget_cfr_neg_button_text">Ikke nå</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Du kan sette Firefox til automatisk å åpne lenker i apper.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Gå til innstillinger</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Ignorer</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">Kameratilgang er nødvendig. Gå til Android-innstillinger, trykk på tillatelser, og trykk på tillat.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Gå til innstillinger</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Ignorer</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Angi at åpne faner som ikke har blitt sett den siste dagen, uken eller måneden skal lukke automatisk.</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">Vis alternativer</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Ignorer</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Ny fane</string> <string name="home_screen_shortcut_open_new_tab_2">Ny fane</string>
@ -540,6 +562,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Fjern</string> <string name="remove_top_site">Fjern</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Slett fra historikk</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (privatmodus)</string> <string name="pwa_site_controls_title_private">%1$s (privatmodus)</string>
@ -1518,4 +1542,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Fjern</string> <string name="remove_home_collection_placeholder_content_description">Fjern</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Få mest mulig ut av %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Samle tingene som betyr noe for deg</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Grupper sammen lignende søk, nettsteder og faner for rask tilgang senere.</string>
</resources> </resources>

@ -78,6 +78,29 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Agora não</string> <string name="search_widget_cfr_neg_button_text">Agora não</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Você pode configurar o Firefox para abrir links automaticamente em aplicativos.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Ir para configurações</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Descartar</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">É necessário acesso à câmera. Use as configurações do Android para mudar as permissões para permitir acesso.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Ir para configurações</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Descartar</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Defina fechar automaticamente as abas abertas que não foram vistas no último dia, semana ou mês.</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">Ver opções</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Descartar</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Nova aba</string> <string name="home_screen_shortcut_open_new_tab_2">Nova aba</string>
@ -534,6 +557,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Remover</string> <string name="remove_top_site">Remover</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Excluir do histórico</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (modo privativo)</string> <string name="pwa_site_controls_title_private">%1$s (modo privativo)</string>
@ -1497,4 +1522,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Remover</string> <string name="remove_home_collection_placeholder_content_description">Remover</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Aproveite ao máximo o %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Reúna o que é importante para você</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Agrupe pesquisas, sites e abas semelhantes para acesso rápido mais tarde.</string>
</resources> </resources>

@ -313,6 +313,9 @@
<!-- Preference for add_ons --> <!-- Preference for add_ons -->
<string name="preferences_addons">Doplnky</string> <string name="preferences_addons">Doplnky</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Upozornenia</string>
<!-- Account Preferences --> <!-- Account Preferences -->
<!-- Preference for triggering sync --> <!-- Preference for triggering sync -->
<string name="preferences_sync_now">Synchronizovať</string> <string name="preferences_sync_now">Synchronizovať</string>
@ -584,6 +587,13 @@
<!-- Text shown when no history exists --> <!-- Text shown when no history exists -->
<string name="history_empty_message">Nemáte žiadnu históriu prehliadania</string> <string name="history_empty_message">Nemáte žiadnu históriu prehliadania</string>
<!-- Downloads -->
<!-- Text shown when no download exists -->
<string name="download_empty_message">Žiadne prevzaté súbory</string>
<!-- History multi select title in app bar
The first parameter is the number of downloads selected -->
<string name="download_multi_select_title">Počet vybraných položiek: %1$d</string>
<!-- Crashes --> <!-- Crashes -->
<!-- Title text displayed on the tab crash page. This first parameter is the name of the application (For example: Fenix) --> <!-- 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">Ospravedlňujeme sa. %1$s nedokáže načítať túto stránku.</string> <string name="tab_crash_title_2">Ospravedlňujeme sa. %1$s nedokáže načítať túto stránku.</string>
@ -739,10 +749,8 @@
<!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed -->
<string name="collection_menu_button_content_description">Ponuka kolekcií</string> <string name="collection_menu_button_content_description">Ponuka kolekcií</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Zbierajte veci, na ktorých vám záleží</string>
<!-- Label to describe what collections are to a new user without any collections --> <!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Zoskupte podobné vyhľadávania, weby a karty, aby ste k nim mali rýchly prístup neskôr.</string> <string name="no_collections_description2">Zbierajte veci, ktoré máte radi.\nZoskupujte podobné vyhľadávania, stránky či karty.</string>
<!-- Title for the "select tabs" step of the collection creator --> <!-- Title for the "select tabs" step of the collection creator -->
<string name="create_collection_select_tabs">Výber kariet</string> <string name="create_collection_select_tabs">Výber kariet</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -991,9 +999,10 @@
<string name="onboarding_whats_new_description">Máte otázky o vynovenej aplikácii %s? Chcete vedieť, čo sa zmenilo?</string> <string name="onboarding_whats_new_description">Máte otázky o vynovenej aplikácii %s? Chcete vedieť, čo sa zmenilo?</string>
<!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ --> <!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ -->
<string name="onboarding_whats_new_description_linktext">Získajte odpovede tu</string> <string name="onboarding_whats_new_description_linktext">Získajte odpovede tu</string>
<!-- text for the firefox account onboarding card header <!-- text for the Firefox account onboarding sign in card header -->
The first parameter is the name of the app (e.g. Firefox Preview) --> <string name="onboarding_account_sign_in_header">S účtom Firefox môžete synchronizovať záložky, históriu prehliadania a omnoho viac.</string>
<string name="onboarding_firefox_account_header">Využite %s naplno.</string> <!-- Text for the button to learn more about signing in to your Firefox account -->
<string name="onboarding_manual_sign_in_learn_more">Ďalšie informácie</string>
<!-- text for the firefox account onboarding card header when we detect you're already signed in to <!-- text for the firefox account onboarding card header when we detect you're already signed in to
another Firefox browser. (The word `Firefox` should not be translated) another Firefox browser. (The word `Firefox` should not be translated)
The first parameter is the email of the detected user's account --> The first parameter is the email of the detected user's account -->
@ -1482,6 +1491,9 @@
<!-- Text displayed on a button in the synced tabs screen to link users to sign in when a user is not signed in to Firefox Sync --> <!-- Text displayed on a button in the synced tabs screen to link users to sign in when a user is not signed in to Firefox Sync -->
<string name="synced_tabs_sign_in_button">Prihlásiť sa k službe Sync</string> <string name="synced_tabs_sign_in_button">Prihlásiť sa k službe Sync</string>
<!-- The text displayed when a synced device has no tabs to show in the list of Synced Tabs. -->
<string name="synced_tabs_no_open_tabs">Žiadne otvorené karty</string>
<!-- Top Sites --> <!-- Top Sites -->
<!-- Title text displayed in the dialog when top sites limit is reached. --> <!-- Title text displayed in the dialog when top sites limit is reached. -->
<string name="top_sites_max_limit_title">Bol dosiahnutý limit top stránok</string> <string name="top_sites_max_limit_title">Bol dosiahnutý limit top stránok</string>
@ -1490,4 +1502,6 @@
<!-- Confirmation dialog button text when top sites limit is reached. --> <!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">Ok, rozumiem</string> <string name="top_sites_max_limit_confirmation_button">Ok, rozumiem</string>
</resources> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Odstrániť</string>
</resources>

@ -739,10 +739,8 @@
<!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed -->
<string name="collection_menu_button_content_description">Мени са збиркама</string> <string name="collection_menu_button_content_description">Мени са збиркама</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Сакупљајте ствари које су вам важне</string>
<!-- Label to describe what collections are to a new user without any collections --> <!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Групишите сличне претраге, странице и језичке за брз приступ касније.</string> <string name="no_collections_description2">Скупите ствари које су вам битне.\nГрупишите сличне претраге, веб странице и језичке за брз приступ касније.</string>
<!-- Title for the "select tabs" step of the collection creator --> <!-- Title for the "select tabs" step of the collection creator -->
<string name="create_collection_select_tabs">Изабери језичке</string> <string name="create_collection_select_tabs">Изабери језичке</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -991,8 +989,8 @@
<string name="onboarding_whats_new_description">Имате питање о новом дизајну апликације %s? Желите ли да знате шта је промењено?</string> <string name="onboarding_whats_new_description">Имате питање о новом дизајну апликације %s? Желите ли да знате шта је промењено?</string>
<!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ --> <!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ -->
<string name="onboarding_whats_new_description_linktext">Овде потражите одговоре</string> <string name="onboarding_whats_new_description_linktext">Овде потражите одговоре</string>
<!-- text for the firefox account onboarding card header --> <!-- text for the Firefox account onboarding sign in card header -->
<string name="onboarding_firefox_account_header">Искористите %s у потпуности.</string> <string name="onboarding_account_sign_in_header">Почните са синхронизовањем забелешки, лозинки и других делова са вашим Firefox налогом.</string>
<!-- Text for the button to learn more about signing in to your Firefox account --> <!-- Text for the button to learn more about signing in to your Firefox account -->
<string name="onboarding_manual_sign_in_learn_more">Сазнајте више</string> <string name="onboarding_manual_sign_in_learn_more">Сазнајте више</string>
<!-- text for the firefox account onboarding card header when we detect you're already signed in to <!-- text for the firefox account onboarding card header when we detect you're already signed in to
@ -1500,4 +1498,6 @@
<!-- Confirmation dialog button text when top sites limit is reached. --> <!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">Важи, разумем</string> <string name="top_sites_max_limit_confirmation_button">Важи, разумем</string>
</resources> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Уклони</string>
</resources>

@ -79,6 +79,23 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Inte nu</string> <string name="search_widget_cfr_neg_button_text">Inte nu</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Gå till Inställningar</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Ignorera</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Gå till Inställningar</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Ignorera</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">Visa alternativ</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Ignorera</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Ny flik</string> <string name="home_screen_shortcut_open_new_tab_2">Ny flik</string>
@ -542,6 +559,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Ta bort</string> <string name="remove_top_site">Ta bort</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Ta bort från historik</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (Privat läge)</string> <string name="pwa_site_controls_title_private">%1$s (Privat läge)</string>
@ -1510,4 +1529,9 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Ta bort</string> <string name="remove_home_collection_placeholder_content_description">Ta bort</string>
</resources>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Få ut det mesta av %s.</string>
</resources>

@ -79,6 +79,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Daha sonra</string> <string name="search_widget_cfr_neg_button_text">Daha sonra</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Firefoxu, bağlantıları otomatik olarak uygulamalarda açacak şekilde ayarlayabilirsiniz.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Ayarlara git</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Kapat</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">Kamera erişimi gerekiyor. Android ayarlarına gidin, izinlere girin ve izin verin.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Ayarlara git</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Kapat</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Bir gün, hafta veya ay boyunca bakmadığınız açık sekmelerin otomatik kapanmasını sağlayabilirsiniz.</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">Seçeneklere git</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Kapat</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Yeni sekme</string> <string name="home_screen_shortcut_open_new_tab_2">Yeni sekme</string>
@ -536,6 +558,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Kaldır</string> <string name="remove_top_site">Kaldır</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Geçmişten sil</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (Gizli Mod)</string> <string name="pwa_site_controls_title_private">%1$s (Gizli Mod)</string>
@ -741,10 +765,8 @@
<string name="collections_header">Koleksiyonlar</string> <string name="collections_header">Koleksiyonlar</string>
<!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the collection menu when pressed -->
<string name="collection_menu_button_content_description">Koleksiyon menüsü</string> <string name="collection_menu_button_content_description">Koleksiyon menüsü</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Sizin için önemli olan şeyleri toplayın</string>
<!-- Label to describe what collections are to a new user without any collections --> <!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Benzer aramaları, siteleri ve sekmeleri gruplandırarak daha sonra onlara hızlıca erişebilirsiniz.</string> <string name="no_collections_description2">Sizin için önemli olan şeyleri toplayın.\nHızlıca erişmek istediğiniz benzer aramaları, siteleri ve sekmeleri bir araya getirin.</string>
<!-- Title for the "select tabs" step of the collection creator --> <!-- Title for the "select tabs" step of the collection creator -->
<string name="create_collection_select_tabs">Sekmeleri seç</string> <string name="create_collection_select_tabs">Sekmeleri seç</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -992,8 +1014,8 @@
<string name="onboarding_whats_new_description">Yeni %s hakkında sorularınız mı var? Nelerin değiştiğini bilmek ister misiniz?</string> <string name="onboarding_whats_new_description">Yeni %s hakkında sorularınız mı var? Nelerin değiştiğini bilmek ister misiniz?</string>
<!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ --> <!-- text for underlined clickable link that is part of "what's new" onboarding card description that links to an FAQ -->
<string name="onboarding_whats_new_description_linktext">Yanıtlar burada</string> <string name="onboarding_whats_new_description_linktext">Yanıtlar burada</string>
<!-- text for the firefox account onboarding card header --> <!-- text for the Firefox account onboarding sign in card header -->
<string name="onboarding_firefox_account_header">%s tarayıcınızdan en iyi şekilde yararlanın.</string> <string name="onboarding_account_sign_in_header">Firefox hesabınızla yer imlerinizi, parolalarınızı ve daha fazlasını eşitlemeye başlayın.</string>
<!-- Text for the button to learn more about signing in to your Firefox account --> <!-- Text for the button to learn more about signing in to your Firefox account -->
<string name="onboarding_manual_sign_in_learn_more">Daha fazla bilgi al</string> <string name="onboarding_manual_sign_in_learn_more">Daha fazla bilgi al</string>
<!-- text for the firefox account onboarding card header when we detect you're already signed in to <!-- text for the firefox account onboarding card header when we detect you're already signed in to
@ -1493,4 +1515,15 @@
<!-- Confirmation dialog button text when top sites limit is reached. --> <!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">Tamam</string> <string name="top_sites_max_limit_confirmation_button">Tamam</string>
<!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Kaldır</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">%s tarayıcınızdan en iyi şekilde yararlanın.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Sizin için önemli olan şeyleri toplayın</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Benzer aramaları, siteleri ve sekmeleri gruplandırarak daha sonra onlara hızlıca erişebilirsiniz.</string>
</resources> </resources>

@ -79,6 +79,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">Не зараз</string> <string name="search_widget_cfr_neg_button_text">Не зараз</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">Ви можете використати Firefox для автоматичного відкриття посилань у програмах.</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">Перейти до налаштувань</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">Відхилити</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">Необхідний доступ до камери. Перейдіть до налаштувань Android, торкніться дозволів та торкніться дозволити.</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">Перейти до налаштувань</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">Закрити</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">Налаштуйте автоматичне закривання відкритих вкладок, які не переглядалися попереднього дня, тижня чи місяця.</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">Перейти до параметрів</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">Закрити</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">Нова вкладка</string> <string name="home_screen_shortcut_open_new_tab_2">Нова вкладка</string>
@ -542,6 +564,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">Вилучити</string> <string name="remove_top_site">Вилучити</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">Видалити з історії</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s (Приватний режим)</string> <string name="pwa_site_controls_title_private">%1$s (Приватний режим)</string>
@ -1510,4 +1534,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">Вилучити</string> <string name="remove_home_collection_placeholder_content_description">Вилучити</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">Отримайте якнайбільше від %s.</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">Зберігайте важливе для вас</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Групуйте подібні пошуки, сайти та вкладки для швидкого доступу.</string>
</resources> </resources>

@ -83,6 +83,21 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">现在不要</string> <string name="search_widget_cfr_neg_button_text">现在不要</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">知道了</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">需要访问相机。转到 Android 设置,点按权限,然后点按允许。</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">转至设置</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">知道了</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">查看选项</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">知道了</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">新建标签页</string> <string name="home_screen_shortcut_open_new_tab_2">新建标签页</string>
@ -550,6 +565,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">移除</string> <string name="remove_top_site">移除</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">删除历史记录</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s隐私模式</string> <string name="pwa_site_controls_title_private">%1$s隐私模式</string>
@ -1532,4 +1549,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">移除</string> <string name="remove_home_collection_placeholder_content_description">移除</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">全面体验 %s。</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">有用的东西收藏在这</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">将相似的搜索查询、网站和标签页归入一组,方便以后快速访问。</string>
</resources> </resources>

@ -80,6 +80,28 @@
<!-- Text for the negative button --> <!-- Text for the negative button -->
<string name="search_widget_cfr_neg_button_text">現在不要</string> <string name="search_widget_cfr_neg_button_text">現在不要</string>
<!-- Open in App "contextual feature recommendation" (CFR) -->
<!-- Text for the info message. 'Firefox' intentionally hardcoded here.-->
<string name="open_in_app_cfr_info_message">您可以設定使用 Firefox 自動開啟各應用程式當中的鏈結。</string>
<!-- Text for the positive action button -->
<string name="open_in_app_cfr_positive_button_text">開啟設定</string>
<!-- Text for the negative action button -->
<string name="open_in_app_cfr_negative_button_text">知道了!</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">需要相機使用權限。請到 Android 系統設定點擊「權限」,然後點擊「允許」。</string>
<!-- Text for the positive action button to go to Android Settings to grant permissions. -->
<string name="camera_permissions_needed_positive_button_text">開啟設定</string>
<!-- Text for the negative action button to dismiss the dialog. -->
<string name="camera_permissions_needed_negative_button_text">知道了!</string>
<!-- Text for the banner message to tell users about our auto close feature. -->
<string name="tab_tray_close_tabs_banner_message">設定自動關閉超過幾天、幾週或幾個月都沒有閱讀過的開啟分頁。</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">檢視選項</string>
<!-- Text for the negative action button to dismiss the Close Tabs Banner. -->
<string name="tab_tray_close_tabs_banner_negative_button_text">知道了!</string>
<!-- Home screen icons - Long press shortcuts --> <!-- Home screen icons - Long press shortcuts -->
<!-- Shortcut action to open new tab --> <!-- Shortcut action to open new tab -->
<string name="home_screen_shortcut_open_new_tab_2">開新分頁</string> <string name="home_screen_shortcut_open_new_tab_2">開新分頁</string>
@ -544,6 +566,8 @@
<!-- Text for the menu button to remove a top site --> <!-- Text for the menu button to remove a top site -->
<string name="remove_top_site">移除</string> <string name="remove_top_site">移除</string>
<!-- Text for the menu button to delete a top site from history -->
<string name="delete_from_history">從瀏覽紀錄刪除</string>
<!-- Postfix for private WebApp titles, placeholder is replaced with app name --> <!-- Postfix for private WebApp titles, placeholder is replaced with app name -->
<string name="pwa_site_controls_title_private">%1$s隱私瀏覽模式</string> <string name="pwa_site_controls_title_private">%1$s隱私瀏覽模式</string>
@ -1521,4 +1545,13 @@
<!-- Content description for close button in collection placeholder. --> <!-- Content description for close button in collection placeholder. -->
<string name="remove_home_collection_placeholder_content_description">移除</string> <string name="remove_home_collection_placeholder_content_description">移除</string>
<!-- depcrecated: text for the firefox account onboarding card header
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_firefox_account_header">發揮 %s 的最大威力。</string>
<!-- Deprecated: No Open Tabs Message Header -->
<string name="no_collections_header1">收集對您而言重要的東西</string>
<!-- Deprecated: Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">將類似的搜尋、網站、分頁放在一起,方便之後快速使用。</string>
</resources> </resources>

@ -0,0 +1,76 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.collections
import io.mockk.mockk
import mozilla.components.support.test.ext.joinBlocking
import org.junit.Assert.assertEquals
import org.junit.Test
import org.junit.runner.RunWith
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
import org.mozilla.fenix.home.Tab
@RunWith(FenixRobolectricTestRunner::class)
class CollectionCreationStoreTest {
@Test
fun `select and deselect all tabs`() {
val tabs = listOf<Tab>(mockk(), mockk())
val store = CollectionCreationStore(
CollectionCreationState(
tabs = tabs,
selectedTabs = emptySet()
)
)
store.dispatch(CollectionCreationAction.AddAllTabs).joinBlocking()
assertEquals(tabs.toSet(), store.state.selectedTabs)
store.dispatch(CollectionCreationAction.RemoveAllTabs).joinBlocking()
assertEquals(emptySet<Tab>(), store.state.selectedTabs)
}
@Test
fun `select and deselect individual tabs`() {
val tab1 = mockk<Tab>()
val tab2 = mockk<Tab>()
val tab3 = mockk<Tab>()
val store = CollectionCreationStore(
CollectionCreationState(
tabs = listOf(tab1, tab2),
selectedTabs = setOf(tab2)
)
)
store.dispatch(CollectionCreationAction.TabAdded(tab2)).joinBlocking()
assertEquals(setOf(tab2), store.state.selectedTabs)
store.dispatch(CollectionCreationAction.TabAdded(tab1)).joinBlocking()
assertEquals(setOf(tab1, tab2), store.state.selectedTabs)
store.dispatch(CollectionCreationAction.TabAdded(tab3)).joinBlocking()
assertEquals(setOf(tab1, tab2, tab3), store.state.selectedTabs)
store.dispatch(CollectionCreationAction.TabRemoved(tab2)).joinBlocking()
assertEquals(setOf(tab1, tab3), store.state.selectedTabs)
}
@Test
fun `change the current step`() {
val store = CollectionCreationStore(
CollectionCreationState(
saveCollectionStep = SaveCollectionStep.SelectTabs,
defaultCollectionNumber = 1
)
)
store.dispatch(CollectionCreationAction.StepChanged(
saveCollectionStep = SaveCollectionStep.RenameCollection,
defaultCollectionNumber = 3
)).joinBlocking()
assertEquals(SaveCollectionStep.RenameCollection, store.state.saveCollectionStep)
assertEquals(3, store.state.defaultCollectionNumber)
}
}

@ -28,11 +28,18 @@ class CollectionCreationTabListAdapterTest {
private lateinit var interactor: CollectionCreationInteractor private lateinit var interactor: CollectionCreationInteractor
private lateinit var adapter: CollectionCreationTabListAdapter private lateinit var adapter: CollectionCreationTabListAdapter
private lateinit var mozillaTab: Tab
@Before @Before
fun setup() { fun setup() {
interactor = mockk() interactor = mockk()
adapter = CollectionCreationTabListAdapter(interactor) adapter = CollectionCreationTabListAdapter(interactor)
mozillaTab = mockk {
every { sessionId } returns "abc"
every { title } returns "Mozilla"
every { hostname } returns "mozilla.org"
every { url } returns "https://mozilla.org"
}
every { interactor.selectCollection(any(), any()) } just Runs every { interactor.selectCollection(any(), any()) } just Runs
} }
@ -52,15 +59,10 @@ class CollectionCreationTabListAdapterTest {
@Test @Test
fun `creates and binds viewholder`() { fun `creates and binds viewholder`() {
val tab = mockk<Tab> {
every { sessionId } returns "abc"
every { title } returns "Mozilla"
every { hostname } returns "mozilla.org"
every { url } returns "https://mozilla.org"
}
adapter.updateData( adapter.updateData(
tabs = listOf(tab), tabs = listOf(mozillaTab),
selectedTabs = emptySet() selectedTabs = emptySet(),
hideCheckboxes = false
) )
val holder = adapter.createViewHolder(FrameLayout(testContext), 0) val holder = adapter.createViewHolder(FrameLayout(testContext), 0)
@ -70,6 +72,35 @@ class CollectionCreationTabListAdapterTest {
assertEquals("mozilla.org", holder.hostname.text) assertEquals("mozilla.org", holder.hostname.text)
assertFalse(holder.tab_selected_checkbox.isInvisible) assertFalse(holder.tab_selected_checkbox.isInvisible)
assertTrue(holder.itemView.isClickable) assertTrue(holder.itemView.isClickable)
every { interactor.addTabToSelection(mozillaTab) } just Runs
every { interactor.removeTabFromSelection(mozillaTab) } just Runs
assertFalse(holder.tab_selected_checkbox.isChecked)
holder.tab_selected_checkbox.isChecked = true
verify { interactor.addTabToSelection(mozillaTab) }
holder.tab_selected_checkbox.isChecked = false
verify { interactor.removeTabFromSelection(mozillaTab) }
}
@Test
fun `creates and binds viewholder for selected tab`() {
every { interactor.addTabToSelection(mozillaTab) } just Runs
adapter.updateData(
tabs = listOf(mozillaTab),
selectedTabs = setOf(mozillaTab),
hideCheckboxes = true
)
val holder = adapter.createViewHolder(FrameLayout(testContext), 0)
adapter.bindViewHolder(holder, 0)
assertEquals("Mozilla", holder.tab_title.text)
assertEquals("mozilla.org", holder.hostname.text)
assertTrue(holder.tab_selected_checkbox.isInvisible)
assertFalse(holder.itemView.isClickable)
} }
@Test @Test

@ -5,15 +5,13 @@
package org.mozilla.fenix.tabhistory package org.mozilla.fenix.tabhistory
import android.content.Context import android.content.Context
import android.graphics.drawable.ColorDrawable
import android.widget.FrameLayout import android.widget.FrameLayout
import androidx.appcompat.view.ContextThemeWrapper import androidx.appcompat.view.ContextThemeWrapper
import io.mockk.MockKAnnotations import io.mockk.MockKAnnotations
import io.mockk.impl.annotations.MockK import io.mockk.impl.annotations.MockK
import kotlinx.android.synthetic.main.history_list_item.* import io.mockk.spyk
import mozilla.components.support.ktx.android.content.getColorFromAttr import io.mockk.verify
import mozilla.components.support.test.robolectric.testContext import mozilla.components.support.test.robolectric.testContext
import org.junit.Assert.assertEquals
import org.junit.Assert.assertFalse import org.junit.Assert.assertFalse
import org.junit.Assert.assertTrue import org.junit.Assert.assertTrue
import org.junit.Before import org.junit.Before
@ -56,18 +54,13 @@ class TabHistoryAdapterTest {
fun `creates and binds view holder`() { fun `creates and binds view holder`() {
adapter.submitList(listOf(selectedItem, unselectedItem)) adapter.submitList(listOf(selectedItem, unselectedItem))
val holder = adapter.createViewHolder(parent, 0) val holder = spyk(adapter.createViewHolder(parent, 0))
adapter.bindViewHolder(holder, 0) adapter.bindViewHolder(holder, 0)
assertEquals("Mozilla", holder.history_layout.titleView.text) verify { holder.bind(selectedItem) }
assertEquals(
context.getColorFromAttr(R.attr.tabHistoryItemSelectedBackground),
(holder.history_layout.background as ColorDrawable).color
)
adapter.bindViewHolder(holder, 1) adapter.bindViewHolder(holder, 1)
assertEquals("Firefox", holder.history_layout.titleView.text) verify { holder.bind(unselectedItem) }
assertEquals(null, holder.history_layout.background)
} }
@Test @Test

@ -10,28 +10,42 @@ import io.mockk.just
import io.mockk.mockk import io.mockk.mockk
import io.mockk.slot import io.mockk.slot
import io.mockk.verify import io.mockk.verify
import mozilla.components.browser.icons.BrowserIcons
import mozilla.components.browser.icons.IconRequest
import mozilla.components.ui.widgets.WidgetSiteItemView
import org.junit.Before import org.junit.Before
import org.junit.Test import org.junit.Test
import org.mozilla.fenix.R
import org.mozilla.fenix.library.LibrarySiteItemView
class TabHistoryViewHolderTest { class TabHistoryViewHolderTest {
@MockK private lateinit var view: View @MockK(relaxed = true) private lateinit var view: WidgetSiteItemView
@MockK private lateinit var interactor: TabHistoryViewInteractor @MockK private lateinit var interactor: TabHistoryViewInteractor
@MockK(relaxed = true) private lateinit var siteItemView: LibrarySiteItemView @MockK private lateinit var icons: BrowserIcons
private lateinit var holder: TabHistoryViewHolder private lateinit var holder: TabHistoryViewHolder
private lateinit var onClick: CapturingSlot<View.OnClickListener> private lateinit var onClick: CapturingSlot<View.OnClickListener>
private val selectedItem = TabHistoryItem(
title = "Mozilla",
url = "https://mozilla.org",
index = 0,
isSelected = true
)
private val unselectedItem = TabHistoryItem(
title = "Firefox",
url = "https://firefox.com",
index = 1,
isSelected = false
)
@Before @Before
fun setup() { fun setup() {
MockKAnnotations.init(this) MockKAnnotations.init(this)
onClick = slot() onClick = slot()
every { siteItemView.setOnClickListener(capture(onClick)) } just Runs every { view.setOnClickListener(capture(onClick)) } just Runs
every { view.findViewById<LibrarySiteItemView>(R.id.history_layout) } returns siteItemView every { icons.loadIntoView(view.iconView, any()) } returns mockk()
holder = TabHistoryViewHolder(view, interactor) holder = TabHistoryViewHolder(view, interactor, icons)
} }
@Test @Test
@ -46,17 +60,18 @@ class TabHistoryViewHolderTest {
@Test @Test
fun `binds title and url`() { fun `binds title and url`() {
val item = TabHistoryItem( holder.bind(unselectedItem)
title = "Firefox",
url = "https://firefox.com", verify { view.setText(label = "Firefox", caption = "https://firefox.com") }
index = 1, verify { icons.loadIntoView(view.iconView, IconRequest("https://firefox.com")) }
isSelected = false }
)
holder.bind(item) @Test
fun `binds background`() {
holder.bind(selectedItem)
verify { view.setBackgroundColor(any()) }
verify { siteItemView.displayAs(LibrarySiteItemView.ItemType.SITE) } holder.bind(unselectedItem)
verify { siteItemView.titleView.text = "Firefox" } verify { view.background = null }
verify { siteItemView.urlView.text = "https://firefox.com" }
verify { siteItemView.loadFavicon("https://firefox.com") }
} }
} }

@ -37,6 +37,7 @@ locales = [
"fy-NL", "fy-NL",
"ga-IE", "ga-IE",
"gd", "gd",
"gl",
"gn", "gn",
"gu-IN", "gu-IN",
"he", "he",

Loading…
Cancel
Save