1
0
Fork 0

Copione merged onto master
continuous-integration/drone/push Build is passing Details

master
blallo 2020-07-03 00:00:44 +02:00
commit ddca9c73c1
43 changed files with 301 additions and 70 deletions

View File

@ -18,17 +18,6 @@
<application <application
tools:replace="android:name" tools:replace="android:name"
android:name="org.mozilla.fenix.DebugFenixApplication"> android:name="org.mozilla.fenix.DebugFenixApplication" />
<service android:name=".customtabs.CustomTabsService">
<!-- Trusted Web Activities are currently only supported in nightly. -->
<intent-filter tools:node="removeAll" />
<intent-filter>
<action android:name="android.support.customtabs.action.CustomTabsService" />
<category android:name="androidx.browser.trusted.category.TrustedWebActivities" />
</intent-filter>
</service>
</application>
</manifest> </manifest>

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.4 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.8 KiB

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 24 KiB

View File

@ -231,6 +231,7 @@
tools:ignore="ExportedService"> tools:ignore="ExportedService">
<intent-filter> <intent-filter>
<action android:name="android.support.customtabs.action.CustomTabsService" /> <action android:name="android.support.customtabs.action.CustomTabsService" />
<category android:name="androidx.browser.trusted.category.TrustedWebActivities" />
</intent-filter> </intent-filter>
</service> </service>

View File

@ -27,5 +27,6 @@ enum class BrowserDirection(@IdRes val fragmentId: Int) {
FromSavedLoginsFragment(R.id.savedLoginsFragment), FromSavedLoginsFragment(R.id.savedLoginsFragment),
FromAddNewDeviceFragment(R.id.addNewDeviceFragment), FromAddNewDeviceFragment(R.id.addNewDeviceFragment),
FromAddSearchEngineFragment(R.id.addSearchEngineFragment), FromAddSearchEngineFragment(R.id.addSearchEngineFragment),
FromEditCustomSearchEngineFragment(R.id.editCustomSearchEngineFragment) FromEditCustomSearchEngineFragment(R.id.editCustomSearchEngineFragment),
FromAddonDetailsFragment(R.id.addonDetailsFragment)
} }

View File

@ -474,6 +474,8 @@ open class HomeActivity : LocaleAwareAppCompatActivity() {
AddSearchEngineFragmentDirections.actionGlobalBrowser(customTabSessionId) AddSearchEngineFragmentDirections.actionGlobalBrowser(customTabSessionId)
BrowserDirection.FromEditCustomSearchEngineFragment -> BrowserDirection.FromEditCustomSearchEngineFragment ->
EditCustomSearchEngineFragmentDirections.actionGlobalBrowser(customTabSessionId) EditCustomSearchEngineFragmentDirections.actionGlobalBrowser(customTabSessionId)
BrowserDirection.FromAddonDetailsFragment ->
EditCustomSearchEngineFragmentDirections.actionGlobalBrowser(customTabSessionId)
} }
private fun load( private fun load(

View File

@ -4,7 +4,6 @@
package org.mozilla.fenix.addons package org.mozilla.fenix.addons
import android.content.Intent
import android.net.Uri import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.view.View import android.view.View
@ -19,6 +18,8 @@ import mozilla.components.feature.addons.Addon
import mozilla.components.feature.addons.ui.showInformationDialog import mozilla.components.feature.addons.ui.showInformationDialog
import mozilla.components.feature.addons.ui.translatedName import mozilla.components.feature.addons.ui.translatedName
import mozilla.components.feature.addons.update.DefaultAddonUpdater.UpdateAttemptStorage import mozilla.components.feature.addons.update.DefaultAddonUpdater.UpdateAttemptStorage
import org.mozilla.fenix.BrowserDirection
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R import org.mozilla.fenix.R
import org.mozilla.fenix.ext.showToolbar import org.mozilla.fenix.ext.showToolbar
@ -38,7 +39,11 @@ class AddonDetailsFragment : Fragment(R.layout.fragment_add_on_details), AddonDe
} }
override fun openWebsite(addonSiteUrl: Uri) { override fun openWebsite(addonSiteUrl: Uri) {
startActivity(Intent(Intent.ACTION_VIEW, addonSiteUrl)) (activity as HomeActivity).openToBrowserAndLoad(
searchTermOrURL = addonSiteUrl.toString(),
newTab = true,
from = BrowserDirection.FromAddonDetailsFragment
)
} }
override fun showUpdaterDialog(addon: Addon) { override fun showUpdaterDialog(addon: Addon) {

View File

@ -5,10 +5,14 @@
package org.mozilla.fenix.addons package org.mozilla.fenix.addons
import android.net.Uri import android.net.Uri
import android.text.SpannableStringBuilder
import android.text.method.LinkMovementMethod import android.text.method.LinkMovementMethod
import android.text.style.ClickableSpan
import android.text.style.URLSpan
import android.view.View import android.view.View
import androidx.core.net.toUri import androidx.core.net.toUri
import androidx.core.text.HtmlCompat import androidx.core.text.HtmlCompat
import androidx.core.text.getSpans
import kotlinx.android.extensions.LayoutContainer import kotlinx.android.extensions.LayoutContainer
import kotlinx.android.synthetic.main.fragment_add_on_details.* import kotlinx.android.synthetic.main.fragment_add_on_details.*
import mozilla.components.feature.addons.Addon import mozilla.components.feature.addons.Addon
@ -102,10 +106,33 @@ class AddonDetailsView(
val parsedText = detailsText.replace("\n", "<br/>") val parsedText = detailsText.replace("\n", "<br/>")
val text = HtmlCompat.fromHtml(parsedText, HtmlCompat.FROM_HTML_MODE_COMPACT) val text = HtmlCompat.fromHtml(parsedText, HtmlCompat.FROM_HTML_MODE_COMPACT)
details.text = text val spannableStringBuilder = SpannableStringBuilder(text)
val links = spannableStringBuilder.getSpans<URLSpan>()
for (link in links) {
addActionToLinks(spannableStringBuilder, link)
}
details.text = spannableStringBuilder
details.movementMethod = LinkMovementMethod.getInstance() details.movementMethod = LinkMovementMethod.getInstance()
} }
private fun addActionToLinks(
spannableStringBuilder: SpannableStringBuilder,
link: URLSpan
) {
val start = spannableStringBuilder.getSpanStart(link)
val end = spannableStringBuilder.getSpanEnd(link)
val flags = spannableStringBuilder.getSpanFlags(link)
val clickable: ClickableSpan = object : ClickableSpan() {
override fun onClick(view: View) {
view.setOnClickListener {
interactor.openWebsite(link.url.toUri())
}
}
}
spannableStringBuilder.setSpan(clickable, start, end, flags)
spannableStringBuilder.removeSpan(link)
}
private fun formatDate(text: String): String { private fun formatDate(text: String): String {
return dateFormatter.format(dateParser.parse(text)!!) return dateFormatter.format(dateParser.parse(text)!!)
} }

View File

@ -34,7 +34,11 @@ class SearchWidgetCFR(
fun displayIfNecessary() { fun displayIfNecessary() {
if (!context.settings().isInSearchWidgetExperiment || if (!context.settings().isInSearchWidgetExperiment ||
!context.settings().shouldDisplaySearchWidgetCFR()) { return } !context.settings().shouldDisplaySearchWidgetCFR() ||
isShown
) { return }
isShown = true
showSearchWidgetCFR() showSearchWidgetCFR()
} }
@ -85,14 +89,21 @@ class SearchWidgetCFR(
} }
searchWidgetCFRDialog.setOnCancelListener { searchWidgetCFRDialog.setOnCancelListener {
isShown = false
context.components.analytics.metrics.track(Event.SearchWidgetCFRCanceled) context.components.analytics.metrics.track(Event.SearchWidgetCFRCanceled)
} }
searchWidgetCFRDialog.setOnDismissListener { searchWidgetCFRDialog.setOnDismissListener {
isShown = false
context.settings().incrementSearchWidgetCFRDismissed() context.settings().incrementSearchWidgetCFRDismissed()
} }
searchWidgetCFRDialog.show() searchWidgetCFRDialog.show()
context.components.analytics.metrics.track(Event.SearchWidgetCFRDisplayed) context.components.analytics.metrics.track(Event.SearchWidgetCFRDisplayed)
} }
companion object {
// Used to ensure multiple dialogs are not shown on top of each other
var isShown = false
}
} }

View File

@ -25,7 +25,7 @@ object SupportUtils {
const val WIKIPEDIA_URL = "https://www.wikipedia.org/" const val WIKIPEDIA_URL = "https://www.wikipedia.org/"
const val FENIX_PLAY_STORE_URL = "https://play.google.com/store/apps/details?id=${BuildConfig.APPLICATION_ID}" const val FENIX_PLAY_STORE_URL = "https://play.google.com/store/apps/details?id=${BuildConfig.APPLICATION_ID}"
const val FIREFOX_BETA_PLAY_STORE_URL = "market://details?id=org.mozilla.firefox_beta" const val FIREFOX_BETA_PLAY_STORE_URL = "market://details?id=org.mozilla.firefox_beta"
const val FIREFOX_NIGHTLY_PLAY_STORE_URL = "market://details?id=org.mozilla.fennec_aurora" const val FIREFOX_NIGHTLY_PLAY_STORE_URL = "market://details?id=org.mozilla.fenix"
const val GOOGLE_URL = "https://www.google.com/" const val GOOGLE_URL = "https://www.google.com/"
enum class SumoTopic(internal val topicStr: String) { enum class SumoTopic(internal val topicStr: String) {

View File

@ -4,7 +4,6 @@
package org.mozilla.gecko.search package org.mozilla.gecko.search
import android.app.ActivityManager
import android.app.PendingIntent import android.app.PendingIntent
import android.appwidget.AppWidgetManager import android.appwidget.AppWidgetManager
import android.appwidget.AppWidgetManager.OPTION_APPWIDGET_MIN_WIDTH import android.appwidget.AppWidgetManager.OPTION_APPWIDGET_MIN_WIDTH
@ -37,21 +36,6 @@ class SearchWidgetProvider : AppWidgetProvider() {
override fun onEnabled(context: Context) { override fun onEnabled(context: Context) {
context.settings().addSearchWidgetInstalled(1) context.settings().addSearchWidgetInstalled(1)
if (isAppInForeground(context)) {
val goHomeOnWidgetAdded = Intent(Intent.ACTION_MAIN)
goHomeOnWidgetAdded.addCategory(Intent.CATEGORY_HOME)
goHomeOnWidgetAdded.flags = Intent.FLAG_ACTIVITY_NEW_TASK
context.startActivity(goHomeOnWidgetAdded)
}
}
// We need this because user can not add widget via launcher app without this
private fun isAppInForeground(context: Context): Boolean {
val activityManager = context.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManager
val runningAppProcesses =
activityManager.runningAppProcesses ?: return false
return runningAppProcesses.any { it.processName == context.packageName &&
it.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND }
} }
override fun onDeleted(context: Context, appWidgetIds: IntArray) { override fun onDeleted(context: Context, appWidgetIds: IntArray) {

View File

@ -0,0 +1,38 @@
<?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/. -->
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?android:selectableItemBackground"
android:clickable="true"
android:focusable="true"
android:gravity="center_vertical"
android:layout_marginStart="@dimen/custom_checkbox_alignment_margin">
<LinearLayout
android:id="@android:id/widget_frame"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@android:id/title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/radio_button_padding_vertical"
android:textColor="@color/state_list_text_color"
android:textSize="16sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@android:id/widget_frame"
app:layout_constraintTop_toTopOf="parent"
tools:text="Delete browsing data category" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -13,12 +13,12 @@
android:focusable="true"> android:focusable="true">
<RadioButton <RadioButton
android:id="@+id/radio_button" android:id="@+id/radio_button"
android:layout_width="@dimen/search_engine_radio_button_height" android:layout_width="wrap_content"
android:layout_height="@dimen/search_engine_radio_button_height" android:layout_height="wrap_content"
android:importantForAccessibility="no" android:importantForAccessibility="no"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textAppearance="?android:attr/textAppearanceListItem" android:textAppearance="?android:attr/textAppearanceListItem"
android:layout_marginStart="@dimen/radio_button_padding_horizontal" android:layout_marginStart="@dimen/search_bar_search_engine_icon_padding"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
@ -26,6 +26,7 @@
android:textColor="?primaryText" android:textColor="?primaryText"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="@dimen/search_bar_search_icon_margin"
android:layout_marginEnd="@dimen/radio_button_padding_horizontal" android:layout_marginEnd="@dimen/radio_button_padding_horizontal"
android:text="@string/search_add_custom_engine_label_other" android:text="@string/search_add_custom_engine_label_other"
app:layout_constraintStart_toEndOf="@id/radio_button" app:layout_constraintStart_toEndOf="@id/radio_button"

View File

@ -7,7 +7,7 @@
style="?android:attr/listViewStyle" style="?android:attr/listViewStyle"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:textAlignment="viewStart" android:textAlignment="viewStart"
android:layout_marginStart="16dp" android:layout_marginStart="72dp"
android:gravity="start|center_vertical" android:gravity="start|center_vertical"
app:fontFamily="@font/metropolis_semibold" app:fontFamily="@font/metropolis_semibold"
android:id="@android:id/title" /> android:id="@android:id/title" />

View File

@ -17,7 +17,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:importantForAccessibility="no" android:importantForAccessibility="no"
android:textAlignment="textStart" android:textAlignment="textStart"
android:layout_marginStart="20dp" android:layout_marginStart="@dimen/radio_button_preference_horizontal"
app:srcCompat="@drawable/ic_new" app:srcCompat="@drawable/ic_new"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
@ -27,9 +27,10 @@
android:textColor="?primaryText" android:textColor="?primaryText"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="18dp" android:layout_marginStart="@dimen/radio_button_drawable_padding"
android:layout_marginEnd="@dimen/radio_button_padding_horizontal" android:layout_marginEnd="@dimen/radio_button_padding_horizontal"
android:text="@string/search_engine_add_custom_search_engine_title" android:text="@string/search_engine_add_custom_search_engine_title"
android:textSize="16sp"
app:layout_constraintStart_toEndOf="@id/add_icon" app:layout_constraintStart_toEndOf="@id/add_icon"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"

View File

@ -13,20 +13,20 @@
android:focusable="true"> android:focusable="true">
<RadioButton <RadioButton
android:id="@+id/radio_button" android:id="@+id/radio_button"
android:layout_width="@dimen/search_engine_radio_button_height" android:layout_width="wrap_content"
android:layout_height="@dimen/search_engine_radio_button_height" android:layout_height="wrap_content"
android:importantForAccessibility="no" android:importantForAccessibility="no"
android:textAlignment="textStart"
android:textAppearance="?android:attr/textAppearanceListItem" android:textAppearance="?android:attr/textAppearanceListItem"
android:layout_marginStart="@dimen/radio_button_padding_horizontal" android:layout_marginStart="@dimen/search_bar_search_engine_icon_padding"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/> app:layout_constraintBottom_toBottomOf="parent"/>
<ImageView <ImageView
android:id="@+id/engine_icon" android:id="@+id/engine_icon"
android:importantForAccessibility="no" android:importantForAccessibility="no"
android:layout_width="24dp" android:layout_width="@dimen/search_engine_engine_icon_height"
android:layout_height="24dp" android:layout_height="@dimen/search_engine_engine_icon_height"
android:layout_marginStart="@dimen/search_bar_search_icon_margin"
app:layout_constraintStart_toEndOf="@id/radio_button" app:layout_constraintStart_toEndOf="@id/radio_button"
app:layout_constraintTop_toTopOf="@id/radio_button" app:layout_constraintTop_toTopOf="@id/radio_button"
app:layout_constraintBottom_toBottomOf="@id/radio_button" /> app:layout_constraintBottom_toBottomOf="@id/radio_button" />
@ -38,6 +38,7 @@
android:layout_marginStart="@dimen/radio_button_padding_horizontal" android:layout_marginStart="@dimen/radio_button_padding_horizontal"
android:layout_marginEnd="@dimen/radio_button_padding_horizontal" android:layout_marginEnd="@dimen/radio_button_padding_horizontal"
android:textAlignment="viewStart" android:textAlignment="viewStart"
android:textSize="16sp"
app:layout_constraintStart_toEndOf="@id/engine_icon" app:layout_constraintStart_toEndOf="@id/engine_icon"
app:layout_constraintTop_toTopOf="@id/engine_icon" app:layout_constraintTop_toTopOf="@id/engine_icon"
app:layout_constraintEnd_toEndOf="parent" /> app:layout_constraintEnd_toEndOf="parent" />

View File

@ -146,6 +146,8 @@
<string name="search_shortcuts_engine_settings">Axustes de los motores de gueta</string> <string name="search_shortcuts_engine_settings">Axustes de los motores de gueta</string>
<!-- Header displayed when selecting a shortcut search engine --> <!-- Header displayed when selecting a shortcut search engine -->
<string name="search_shortcuts_search_with_2">Y agora gueta con:</string> <string name="search_shortcuts_search_with_2">Y agora gueta con:</string>
<!-- Button in the search view that lets a user navigate to the site in their clipboard -->
<string name="awesomebar_clipboard_title">Rellenar col enllaz del cartafueyu</string>
<!-- Button in the search suggestions onboarding that allows search suggestions in private sessions --> <!-- Button in the search suggestions onboarding that allows search suggestions in private sessions -->
<string name="search_suggestions_onboarding_allow_button">Permitir</string> <string name="search_suggestions_onboarding_allow_button">Permitir</string>
<!-- Button in the search suggestions onboarding that does not allow search suggestions in private sessions --> <!-- Button in the search suggestions onboarding that does not allow search suggestions in private sessions -->
@ -426,6 +428,8 @@
<!-- Open tabs menu item to share all tabs --> <!-- Open tabs menu item to share all tabs -->
<string name="tabs_menu_share_tabs">Compartir les llingüetes</string> <string name="tabs_menu_share_tabs">Compartir les llingüetes</string>
<!-- Open tabs menu item to save tabs to collection -->
<string name="tabs_menu_save_to_collection1">Guardar llingüetes nuna coleición</string>
<!-- Content description (not visible, for screen readers etc.): Opens the tab menu when pressed --> <!-- Content description (not visible, for screen readers etc.): Opens the tab menu when pressed -->
<string name="tab_menu">Menú de llingüetes</string> <string name="tab_menu">Menú de llingüetes</string>
<!-- Button in the current session menu. Deletes the session when pressed --> <!-- Button in the current session menu. Deletes the session when pressed -->
@ -778,8 +782,6 @@
<string name="preference_summary_delete_browsing_data_on_quit">Desanicia automáticamente los datos de restolar cuando esbilles «Colar» nel menú principal</string> <string name="preference_summary_delete_browsing_data_on_quit">Desanicia automáticamente los datos de restolar cuando esbilles «Colar» nel menú principal</string>
<!-- Summary for the Delete browsing data on quit preference. "Quit" translation should match delete_browsing_data_on_quit_action translation. --> <!-- Summary for the Delete browsing data on quit preference. "Quit" translation should match delete_browsing_data_on_quit_action translation. -->
<string name="preference_summary_delete_browsing_data_on_quit_2">Desanicia automáticamente los datos de restolar cuando esbilles «Colar» nel menú principal</string> <string name="preference_summary_delete_browsing_data_on_quit_2">Desanicia automáticamente los datos de restolar cuando esbilles «Colar» nel menú principal</string>
<!-- Category for history items to delete on quit in delete browsing data on quit -->
<string name="preferences_delete_browsing_data_on_quit_browsing_history">Historial de restolar</string>
<!-- Action item in menu for the Delete browsing data on quit feature --> <!-- Action item in menu for the Delete browsing data on quit feature -->
<string name="delete_browsing_data_on_quit_action">Colar</string> <string name="delete_browsing_data_on_quit_action">Colar</string>
@ -916,6 +918,8 @@
<string name="sign_in_instructions"><![CDATA[Nun ordenador abri Firefox y vete a <b>https://firefox.com/pair</b>]]></string> <string name="sign_in_instructions"><![CDATA[Nun ordenador abri Firefox y vete a <b>https://firefox.com/pair</b>]]></string>
<!-- Text shown for sign in pairing when ready --> <!-- Text shown for sign in pairing when ready -->
<string name="sign_in_ready_for_scan">Escaniar</string> <string name="sign_in_ready_for_scan">Escaniar</string>
<!-- Text shown for settings option for sign with pairing -->
<string name="sign_in_with_camera">Aniciu de sesión cola cámara</string>
<!-- Text shown for settings option for sign with email --> <!-- Text shown for settings option for sign with email -->
<string name="sign_in_with_email">Usar una direición de corréu</string> <string name="sign_in_with_email">Usar una direición de corréu</string>
<!-- Text shown in confirmation dialog to sign out of account --> <!-- Text shown in confirmation dialog to sign out of account -->
@ -956,6 +960,8 @@
<string name="preference_enhanced_tracking_protection_strict_info_button">Lo que la proteición estricta escontra\'l rastrexu bloquia</string> <string name="preference_enhanced_tracking_protection_strict_info_button">Lo que la proteición estricta escontra\'l rastrexu bloquia</string>
<!-- Preference for enhanced tracking protection for the custom protection settings --> <!-- Preference for enhanced tracking protection for the custom protection settings -->
<string name="preference_enhanced_tracking_protection_custom">Personalizar</string> <string name="preference_enhanced_tracking_protection_custom">Personalizar</string>
<!-- Preference description for enhanced tracking protection for the strict protection settings -->
<string name="preference_enhanced_tracking_protection_custom_description_2">Escueyi los rastrexadores y scripts a bloquiar.</string>
<!-- Accessibility text for the Strict protection information icon --> <!-- Accessibility text for the Strict protection information icon -->
<string name="preference_enhanced_tracking_protection_custom_info_button">Lo que la proteición personalizada escontra\'l rastrexu bloquia</string> <string name="preference_enhanced_tracking_protection_custom_info_button">Lo que la proteición personalizada escontra\'l rastrexu bloquia</string>
<!-- Header for categories that are being blocked by current Enhanced Tracking Protection settings --> <!-- Header for categories that are being blocked by current Enhanced Tracking Protection settings -->
@ -1270,6 +1276,9 @@
<!-- The error message in edit login view when a duplicate username exists. --> <!-- The error message in edit login view when a duplicate username exists. -->
<string name="saved_login_duplicate">Yá esiste un aniciu de sesión con esi nome d\'usuariu</string> <string name="saved_login_duplicate">Yá esiste un aniciu de sesión con esi nome d\'usuariu</string>
<!-- Synced Tabs -->
<!-- Text displayed when user is not logged into a Firefox Account -->
<string name="synced_tabs_connect_to_sync_account">Coneuta con una cuenta de Firefox.</string>
<!-- Text displayed asking user to re-authenticate --> <!-- Text displayed asking user to re-authenticate -->
<string name="synced_tabs_reauth">Volvi autenticate, por favor.</string> <string name="synced_tabs_reauth">Volvi autenticate, por favor.</string>
<!-- Text displayed when user has disabled tab syncing in Firefox Sync Account --> <!-- Text displayed when user has disabled tab syncing in Firefox Sync Account -->

View File

@ -21,6 +21,8 @@
<!-- No Private Tabs Message Description --> <!-- No Private Tabs Message Description -->
<string name="no_private_tabs_description">Tady se zobrazí vaše anonymní panely.</string> <string name="no_private_tabs_description">Tady se zobrazí vaše anonymní panely.</string>
<!-- Message announced to the user when tab tray is selected with 1 tab -->
<string name="open_tab_tray_single">Jeden otevřený panel. Klepnutím panely přepnete.</string>
<!-- Message announced to the user when tab tray is selected with 0 or 2+ tabs --> <!-- Message announced to the user when tab tray is selected with 0 or 2+ tabs -->
<string name="open_tab_tray_plural">%1$s otevřených panelů. Klepnutím přepnete panely.</string> <string name="open_tab_tray_plural">%1$s otevřených panelů. Klepnutím přepnete panely.</string>
@ -299,6 +301,8 @@
<string name="preferences_sync_bookmarks">Záložky</string> <string name="preferences_sync_bookmarks">Záložky</string>
<!-- Preference for syncing logins --> <!-- Preference for syncing logins -->
<string name="preferences_sync_logins">Přihlašovací údaje</string> <string name="preferences_sync_logins">Přihlašovací údaje</string>
<!-- Preference for syncing tabs -->
<string name="preferences_sync_tabs_2">Otevřené panely</string>
<!-- Preference for signing out --> <!-- Preference for signing out -->
<string name="preferences_sign_out">Odhlásit</string> <string name="preferences_sign_out">Odhlásit</string>
<!-- Preference displays and allows changing current FxA device name --> <!-- Preference displays and allows changing current FxA device name -->
@ -715,6 +719,10 @@
<string name="collections_header">Sbírky</string> <string name="collections_header">Sbírky</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">Nabídka sbírek</string> <string name="collection_menu_button_content_description">Nabídka sbírek</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Uložte si důležité věci do sbírek</string>
<!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Podobná vyhledávání, stránky a panely si můžete seskupit a poté se k nim snadno vracet.</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">Vyberte panely</string> <string name="create_collection_select_tabs">Vyberte panely</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -899,8 +907,6 @@
<string name="preference_summary_delete_browsing_data_on_quit">Po výběru „Ukončit“ z hlavní nabídky aplikace dojde ke smazání soukromých dat</string> <string name="preference_summary_delete_browsing_data_on_quit">Po výběru „Ukončit“ z hlavní nabídky aplikace dojde ke smazání soukromých dat</string>
<!-- Summary for the Delete browsing data on quit preference. "Quit" translation should match delete_browsing_data_on_quit_action translation. --> <!-- Summary for the Delete browsing data on quit preference. "Quit" translation should match delete_browsing_data_on_quit_action translation. -->
<string name="preference_summary_delete_browsing_data_on_quit_2">Po výběru „Ukončit“ z hlavní nabídky aplikace dojde ke smazání soukromých dat</string> <string name="preference_summary_delete_browsing_data_on_quit_2">Po výběru „Ukončit“ z hlavní nabídky aplikace dojde ke smazání soukromých dat</string>
<!-- Category for history items to delete on quit in delete browsing data on quit -->
<string name="preferences_delete_browsing_data_on_quit_browsing_history">Historie prohlížení</string>
<!-- Action item in menu for the Delete browsing data on quit feature --> <!-- Action item in menu for the Delete browsing data on quit feature -->
<string name="delete_browsing_data_on_quit_action">Ukončit</string> <string name="delete_browsing_data_on_quit_action">Ukončit</string>
@ -922,6 +928,11 @@
<!-- text for firefox preview moving tip header "Firefox Preview" and "Firefox Nightly" are intentionally hardcoded --> <!-- text for firefox preview moving tip header "Firefox Preview" and "Firefox Nightly" are intentionally hardcoded -->
<string name="tip_firefox_preview_moved_header">Firefox Preview je nyní Firefox Nightly</string> <string name="tip_firefox_preview_moved_header">Firefox Preview je nyní Firefox Nightly</string>
<!-- text for firefox preview moving tip description -->
<string name="tip_firefox_preview_moved_description">Firefox Nightly je aktualizován každou noc a obsahuje nové experimentální funkce. Může však být méně stabilní. Stáhněte si náš beta prohlížeč pro stabilnější zážitek.</string>
<!-- text for firefox preview moving tip button. "Firefox for Android Beta" is intentionally hardcoded -->
<string name="tip_firefox_preview_moved_button_2">Získat Firefox Beta pro Android</string>
<!-- text for firefox preview moving tip header. "Firefox Nightly" is intentionally hardcoded --> <!-- text for firefox preview moving tip header. "Firefox Nightly" is intentionally hardcoded -->
<string name="tip_firefox_preview_moved_header_preview_installed">Firefox Nightly se mění</string> <string name="tip_firefox_preview_moved_header_preview_installed">Firefox Nightly se mění</string>
<!-- text for firefox preview moving tip description --> <!-- text for firefox preview moving tip description -->
@ -975,6 +986,9 @@
<string name="onboarding_firefox_account_automatic_signin_failed">Přihlášení selhalo</string> <string name="onboarding_firefox_account_automatic_signin_failed">Přihlášení selhalo</string>
<!-- text for the tracking protection onboarding card header --> <!-- text for the tracking protection onboarding card header -->
<string name="onboarding_tracking_protection_header_2">Automatické soukromí</string> <string name="onboarding_tracking_protection_header_2">Automatické soukromí</string>
<!-- text for the tracking protection card description
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_tracking_protection_description_2">Nastavení soukromí a zabezpečení blokuje sledovací prvky, malware a společnosti, které vás sledují.</string>
<!-- text for tracking protection radio button option for standard level of blocking --> <!-- text for tracking protection radio button option for standard level of blocking -->
<string name="onboarding_tracking_protection_standard_button_2">Standardní (výchozí)</string> <string name="onboarding_tracking_protection_standard_button_2">Standardní (výchozí)</string>
<!-- text for standard blocking option button description --> <!-- text for standard blocking option button description -->
@ -1133,6 +1147,8 @@
<string name="etp_tracking_content_title">Sledující obsah</string> <string name="etp_tracking_content_title">Sledující obsah</string>
<!-- Description of tracking content that can be blocked by Enhanced Tracking Protection --> <!-- Description of tracking content that can be blocked by Enhanced Tracking Protection -->
<string name="etp_tracking_content_description">Blokuje načítání reklam, videí a dalšího obsahu, který obsahuje sledující kód. To může ovlivnit fungování některých webových stránek.</string> <string name="etp_tracking_content_description">Blokuje načítání reklam, videí a dalšího obsahu, který obsahuje sledující kód. To může ovlivnit fungování některých webových stránek.</string>
<!-- Enhanced Tracking Protection Onboarding Message shown in a dialog above the toolbar. The first parameter is the name of the application (For example: Fenix) -->
<string name="etp_onboarding_cfr_message">Fialový štít znamená, že aplikace %s na stránce zablokovala nějaké sledovací prvky. Klepnutím zobrazíte více informací.</string>
<!-- Enhanced Tracking Protection message that protection is currently on for this site --> <!-- Enhanced Tracking Protection message that protection is currently on for this site -->
<string name="etp_panel_on">Ochrana je na tomto serveru zapnuta</string> <string name="etp_panel_on">Ochrana je na tomto serveru zapnuta</string>
<!-- Enhanced Tracking Protection message that protection is currently off for this site --> <!-- Enhanced Tracking Protection message that protection is currently off for this site -->
@ -1292,9 +1308,14 @@
<!-- Summary for Accessibility Force Enable Zoom Preference --> <!-- Summary for Accessibility Force Enable Zoom Preference -->
<string name="preference_accessibility_force_enable_zoom_summary">Povolit gesto pro přiblížení i na stránkách, které tomu zabraňují.</string> <string name="preference_accessibility_force_enable_zoom_summary">Povolit gesto pro přiblížení i na stránkách, které tomu zabraňují.</string>
<!-- Saved logins sorting strategy menu item -by name- (if selected, it will sort saved logins alphabetically) -->
<string name="saved_logins_sort_strategy_alphabetically">Názvu (A-Z)</string>
<!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) --> <!-- Saved logins sorting strategy menu item -by last used- (if selected, it will sort saved logins by last used) -->
<string name="saved_logins_sort_strategy_last_used">Naposledy použito</string> <string name="saved_logins_sort_strategy_last_used">Naposledy použito</string>
<!-- Content description (not visible, for screen readers etc.): Sort saved logins dropdown menu chevron icon -->
<string name="saved_logins_menu_dropdown_chevron_icon_content_description">Seřadit podle</string>
<!-- Title of the Add search engine screen --> <!-- Title of the Add search engine screen -->
<string name="search_engine_add_custom_search_engine_title">Přidat vyhledávač</string> <string name="search_engine_add_custom_search_engine_title">Přidat vyhledávač</string>
<!-- Title of the Edit search engine screen --> <!-- Title of the Edit search engine screen -->
@ -1396,6 +1417,12 @@
<string name="dialog_delete_positive">Odstranit</string> <string name="dialog_delete_positive">Odstranit</string>
<!-- The saved login options menu description. --> <!-- The saved login options menu description. -->
<string name="login_options_menu">Možnosti přihlášení</string> <string name="login_options_menu">Možnosti přihlášení</string>
<!-- The editable text field for a login's web address. -->
<string name="saved_login_hostname_description">Textové pole pro webovou adresu pro přihlašovací údaje.</string>
<!-- The editable text field for a login's username. -->
<string name="saved_login_username_description">Textové pole pro uživatelské jméno z přihlašovacích údajů.</string>
<!-- The editable text field for a login's password. -->
<string name="saved_login_password_description">Textové pole pro heslo z přihlašovacích údajů.</string>
<!-- The button description to save changes to an edited login. --> <!-- The button description to save changes to an edited login. -->
<string name="save_changes_to_login">Uložit změny přihlašovacích údajů.</string> <string name="save_changes_to_login">Uložit změny přihlašovacích údajů.</string>
<!-- The button description to discard changes to an edited login. --> <!-- The button description to discard changes to an edited login. -->
@ -1412,7 +1439,29 @@
<!-- The error message in edit login view when a duplicate username exists. --> <!-- The error message in edit login view when a duplicate username exists. -->
<string name="saved_login_duplicate">Přihlašovací údaje s tímto uživatelským jménem už existují</string> <string name="saved_login_duplicate">Přihlašovací údaje s tímto uživatelským jménem už existují</string>
<!-- Synced Tabs -->
<!-- Text displayed when user is not logged into a Firefox Account -->
<string name="synced_tabs_connect_to_sync_account">Připojte se k účtu Firefoxu.</string>
<!-- Text displayed to ask user to connect another device as no devices found with account --> <!-- Text displayed to ask user to connect another device as no devices found with account -->
<string name="synced_tabs_connect_another_device">Připojte další zařízení.</string> <string name="synced_tabs_connect_another_device">Připojte další zařízení.</string>
</resources> <!-- Text displayed asking user to re-authenticate -->
<string name="synced_tabs_reauth">Proveďte prosím znovu své ověření.</string>
<!-- Text displayed when user has disabled tab syncing in Firefox Sync Account -->
<string name="synced_tabs_enable_tab_syncing">Zapněte nejdříve synchronizaci panelů.</string>
<!-- Text displayed when user has no tabs that have been synced -->
<string name="synced_tabs_no_tabs">Ve vašich zařízeních nejsou otevřené žádné panely.</string>
<!-- Text displayed in the synced tabs screen when a user is not signed in to Firefox Sync describing Synced Tabs -->
<string name="synced_tabs_sign_in_message">Seznam panelů z ostatních zařízení.</string>
<!-- 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">Přihlásit se k synchronizaci</string>
<!-- Top Sites -->
<!-- Title text displayed in the dialog when top sites limit is reached. -->
<string name="top_sites_max_limit_title">Dosažen limit počtu top stránek</string>
<!-- Content description text displayed in the dialog when top sites limit is reached. -->
<string name="top_sites_max_limit_content">Pro přidání další top stránky nejdříve nějakou odeberte. Stačí na ní podržet prst.</string>
<!-- Confirmation dialog button text when top sites limit is reached. -->
<string name="top_sites_max_limit_confirmation_button">OK, rozumím</string>
</resources>

View File

@ -20,6 +20,11 @@
<!-- No Private Tabs Message Description --> <!-- No Private Tabs Message Description -->
<string name="no_private_tabs_description">Tu bodo prikazani vaši zasebni zavihki.</string> <string name="no_private_tabs_description">Tu bodo prikazani vaši zasebni zavihki.</string>
<!-- Message announced to the user when tab tray is selected with 1 tab -->
<string name="open_tab_tray_single">1 odprt zavihek. Tapnite za preklop zavihkov.</string>
<!-- Message announced to the user when tab tray is selected with 0 or 2+ tabs -->
<string name="open_tab_tray_plural">Odprtih zavihkov: %1$s. Tapnite za preklop zavihkov.</string>
<!-- About content. The first parameter is the name of the application. (For example: Fenix) --> <!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="about_content">%1$s izdeluje Mozilla.</string> <string name="about_content">%1$s izdeluje Mozilla.</string>
@ -291,6 +296,8 @@
<string name="preferences_sync_bookmarks">Zaznamki</string> <string name="preferences_sync_bookmarks">Zaznamki</string>
<!-- Preference for syncing logins --> <!-- Preference for syncing logins -->
<string name="preferences_sync_logins">Prijave</string> <string name="preferences_sync_logins">Prijave</string>
<!-- Preference for syncing tabs -->
<string name="preferences_sync_tabs_2">Odprti zavihki</string>
<!-- Preference for signing out --> <!-- Preference for signing out -->
<string name="preferences_sign_out">Odjava</string> <string name="preferences_sign_out">Odjava</string>
<!-- Preference displays and allows changing current FxA device name --> <!-- Preference displays and allows changing current FxA device name -->
@ -452,6 +459,10 @@
<string name="add_tab">Dodaj zavihek</string> <string name="add_tab">Dodaj zavihek</string>
<!-- Content description (not visible, for screen readers etc.): Add tab button. Adds a news tab when pressed --> <!-- Content description (not visible, for screen readers etc.): Add tab button. Adds a news tab when pressed -->
<string name="add_private_tab">Dodaj zasebni zavihek</string> <string name="add_private_tab">Dodaj zasebni zavihek</string>
<!-- Text for the new tab button to indicate adding a new private tab in the tab -->
<string name="tab_drawer_fab_content">Zasebno</string>
<!-- Text shown as the title of the open tab tray -->
<string name="tab_tray_title">Odprti zavihki</string>
<!-- Text shown in the menu for saving tabs to a collection --> <!-- Text shown in the menu for saving tabs to a collection -->
<string name="tab_tray_menu_item_save">Shrani v zbirko</string> <string name="tab_tray_menu_item_save">Shrani v zbirko</string>
<!-- Text shown in the menu for sharing all tabs --> <!-- Text shown in the menu for sharing all tabs -->
@ -697,6 +708,10 @@
<string name="collections_header">Zbirke</string> <string name="collections_header">Zbirke</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">Meni zbirk</string> <string name="collection_menu_button_content_description">Meni zbirk</string>
<!-- No Open Tabs Message Header -->
<string name="no_collections_header1">Zbirajte stvari, ki vam kaj pomenijo</string>
<!-- Label to describe what collections are to a new user without any collections -->
<string name="no_collections_description1">Združite podobna iskanja, spletne strani in zavihke za hitrejši dostop.</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">Izberi zavihke</string> <string name="create_collection_select_tabs">Izberi zavihke</string>
<!-- Title for the "select collection" step of the collection creator --> <!-- Title for the "select collection" step of the collection creator -->
@ -960,6 +975,9 @@
<string name="onboarding_firefox_account_automatic_signin_failed">Prijava ni uspela</string> <string name="onboarding_firefox_account_automatic_signin_failed">Prijava ni uspela</string>
<!-- text for the tracking protection onboarding card header --> <!-- text for the tracking protection onboarding card header -->
<string name="onboarding_tracking_protection_header_2">Samodejna zasebnost</string> <string name="onboarding_tracking_protection_header_2">Samodejna zasebnost</string>
<!-- text for the tracking protection card description
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_tracking_protection_description_2">Nastavitve zasebnosti in varnosti zavračajo sledilce, zlonamerno programsko opremo in podjetja, ki vam sledijo.</string>
<!-- text for tracking protection radio button option for standard level of blocking --> <!-- text for tracking protection radio button option for standard level of blocking -->
<string name="onboarding_tracking_protection_standard_button_2">Običajno (privzeto)</string> <string name="onboarding_tracking_protection_standard_button_2">Običajno (privzeto)</string>
<!-- text for standard blocking option button description --> <!-- text for standard blocking option button description -->
@ -1433,6 +1451,11 @@
<!-- 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">Prijava v Sync</string> <string name="synced_tabs_sign_in_button">Prijava v Sync</string>
<!-- Top Sites -->
<!-- Title text displayed in the dialog when top sites limit is reached. -->
<string name="top_sites_max_limit_title">Omejitev glavnih strani je dosežena</string>
<!-- Content description text displayed in the dialog when top sites limit is reached. -->
<string name="top_sites_max_limit_content">Če želite dodati novo glavno stran, eno odstranite. Podržite prst na njej in izberite &quot;Odstrani&quot;.</string>
<!-- 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">V redu, razumem</string> <string name="top_sites_max_limit_confirmation_button">V redu, razumem</string>

View File

@ -142,4 +142,72 @@
<!-- Preference category for account information --> <!-- Preference category for account information -->
<string name="preferences_category_account">கணக்கு</string> <string name="preferences_category_account">கணக்கு</string>
<!-- Preference shown on banner to sign into account -->
<string name="preferences_sign_in">புகுபதிகை</string>
<!-- Preference for changing where the toolbar is positioned -->
<string name="preferences_toolbar">கருவிப்பட்டி</string>
<!-- Preference for changing default theme to dark or light mode -->
<string name="preferences_theme">கருப்பொருள்</string>
<!-- Preference shown instead of account display name while account profile information isn't available yet. -->
<string name="preferences_account_default_name">பயர்பாக்சு கணக்கு</string>
<!-- Preference for language -->
<string name="preferences_language">மொழி</string>
<!-- Preference for data choices -->
<string name="preferences_data_choices">தரவுத் தேர்வுகள்</string>
<!-- Preference for data collection -->
<string name="preferences_data_collection">தரவுச் சேகரிப்பு</string>
<!-- Preference linking to the privacy notice -->
<string name="preferences_privacy_link">தனியுரிமை அறிவிப்பு</string>
<!-- Preference category for developer tools -->
<string name="developer_tools_category">உருவாக்குநர் கருவிகள்</string>
<!-- Preference for developers -->
<string name="preferences_remote_debugging">USB மூலமாகத் தொலைநிலை வழுநீக்கல்</string>
<!-- Preference title for switch preference to show search shortcuts -->
<string name="preferences_show_search_shortcuts">தேடல் குறுக்குவழிகளைக் காட்டு</string>
<!-- Preference title for switch preference to show search suggestions -->
<string name="preferences_show_search_suggestions">தேடல் பரிந்துரைகளைக் காட்டு</string>
<!-- Preference title for switch preference to show search suggestions also in private mode -->
<string name="preferences_show_search_suggestions_in_private">கமுக்க அமர்வுகளில் காட்டு</string>
<!-- Preference title for switch preference to show a clipboard suggestion when searching -->
<string name="preferences_show_clipboard_suggestions">ஒட்டுப்பலகைப் பரிந்துரைகளைக் காட்டு</string>
<!-- Preference title for switch preference to suggest browsing history when searching -->
<string name="preferences_search_browsing_history">உலாவல் வரலாற்றைத் தேடு</string>
<!-- Preference title for switch preference to suggest bookmarks when searching -->
<string name="preferences_search_bookmarks">புத்தகக்குறிகளைத் தேடு</string>
<!-- Preference for account settings -->
<string name="preferences_account_settings">கணக்கு அமைப்புகள்</string>
<!-- Account Preferences -->
<!-- Preference for triggering sync -->
<string name="preferences_sync_now">இப்போது ஒத்திசை</string>
<!-- Preference category for sync -->
<string name="preferences_sync_category">ஒத்திசைக்க வேண்டியதைத் தேர்</string>
<!-- Preference for syncing history -->
<string name="preferences_sync_history">வரலாறு</string>
<!-- Preference for syncing bookmarks -->
<string name="preferences_sync_bookmarks">புத்தகக்குறிகள்</string>
<!-- Preference for syncing logins -->
<string name="preferences_sync_logins">புகுபதிகைகள்</string>
<!-- Preference for signing out -->
<string name="preferences_sign_out">விடுபதிகை</string>
<!-- Preference displays and allows changing current FxA device name -->
<string name="preferences_sync_device_name">சாதனப் பெயர்</string>
<!-- Text shown when user enters empty device name -->
<string name="empty_device_name_error">சாதனப் பெயர் காலியாக இருக்க முடியாது.</string>
<!-- Label indicating that sync is in progress -->
<string name="sync_syncing_in_progress">ஒத்திசைக்கிறது…</string>
<!-- Label summary indicating that sync failed. The first parameter is the date stamp showing last time it succeeded -->
<string name="sync_failed_summary">ஒத்திசைவு தோல்வி. கடைசியாக வெற்றியடைந்தது: %s</string>
<!-- Label summary showing never synced -->
<string name="sync_failed_never_synced_summary">ஒத்திசைவு தோல்வி. கடைசியாக ஒத்திசைக்கப்பட்டது: இல்லை</string>
<!-- Label summary the date we last synced. The first parameter is date stamp showing last time synced -->
<string name="sync_last_synced_summary">கடைசி ஒத்திசைவு: %@</string>
<!-- Label summary showing never synced -->
<string name="sync_never_synced_summary">கடைசி ஒத்திசைவு: இல்லை</string>
<!-- Send Tab -->
<!-- Name of the "receive tabs" notification channel. Displayed in the "App notifications" system settings for the app -->
<string name="fxa_received_tab_channel_name">பெறப்பட்ட கீற்றுகள்</string>
</resources> </resources>

View File

@ -91,6 +91,8 @@
<string name="preferences_category_account">ఖాతా</string> <string name="preferences_category_account">ఖాతా</string>
<!-- Preference for changing default theme to dark or light mode --> <!-- Preference for changing default theme to dark or light mode -->
<string name="preferences_theme">అలంకారం</string> <string name="preferences_theme">అలంకారం</string>
<!-- Preference shown instead of account display name while account profile information isn't available yet. -->
<string name="preferences_account_default_name">Firefox ఖాతా</string>
<!-- Preference for language --> <!-- Preference for language -->
<string name="preferences_language">భాష</string> <string name="preferences_language">భాష</string>
@ -99,6 +101,10 @@
<!-- Preference for data collection --> <!-- Preference for data collection -->
<string name="preferences_data_collection"></string> <string name="preferences_data_collection"></string>
<!-- Preference linking to the privacy notice -->
<string name="preferences_privacy_link">అంతరంగికతా విధానం</string>
<!-- Preference category for developer tools -->
<string name="developer_tools_category">డెవలపర్ పనిముట్లు</string>
<!-- Preference for account settings --> <!-- Preference for account settings -->
<string name="preferences_account_settings">ఖాతా అమరికలు</string> <string name="preferences_account_settings">ఖాతా అమరికలు</string>
@ -163,6 +169,8 @@
<!-- Sessions --> <!-- Sessions -->
<!-- Title for the list of tabs --> <!-- Title for the list of tabs -->
<string name="tab_header_label">తెరిచివున్న ట్యాబులు</string> <string name="tab_header_label">తెరిచివున్న ట్యాబులు</string>
<!-- Text for the new tab button to indicate adding a new private tab in the tab -->
<string name="tab_drawer_fab_content">అంతరంగికం</string>
<!-- Text shown as the title of the open tab tray --> <!-- Text shown as the title of the open tab tray -->
<string name="tab_tray_title">తెరిచివున్న ట్యాబులు</string> <string name="tab_tray_title">తెరిచివున్న ట్యాబులు</string>
<!-- Text shown in the menu for closing all tabs --> <!-- Text shown in the menu for closing all tabs -->
@ -196,6 +204,13 @@
is a digit showing the number of items you have selected --> is a digit showing the number of items you have selected -->
<string name="history_delete_some">%1$d అంశాలను తొలగించు</string> <string name="history_delete_some">%1$d అంశాలను తొలగించు</string>
<!-- Text for the header that groups the history the past 30 days -->
<string name="history_30_days">గత 30 రోజులు</string>
<!-- Text for the header that groups the history older than the last month -->
<string name="history_older">పాతవి</string>
<!-- Text shown when no history exists -->
<string name="history_empty_message">ఇక్కడ చరిత్రేమీ లేదు</string>
<!-- Close tab button text on the tab crash page --> <!-- Close tab button text on the tab crash page -->
<string name="tab_crash_close">ట్యాబును మూసివేయి</string> <string name="tab_crash_close">ట్యాబును మూసివేయి</string>
@ -237,6 +252,9 @@
<!-- Tab collection deletion prompt dialog option to cancel deleting the collection --> <!-- Tab collection deletion prompt dialog option to cancel deleting the collection -->
<string name="tab_collection_dialog_negative">రద్దుచేయి</string> <string name="tab_collection_dialog_negative">రద్దుచేయి</string>
<!-- Title for Accessibility Text Size Scaling Preference -->
<string name="preference_accessibility_font_size_title">ఫాంటు పరిమాణం</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">తెరిచివున్న ట్యాబులు</string> <string name="preferences_delete_browsing_data_tabs_title_2">తెరిచివున్న ట్యాబులు</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 -->
@ -259,6 +277,16 @@
<!-- Text for the allow button for the data deletion dialog --> <!-- Text for the allow button for the data deletion dialog -->
<string name="delete_browsing_data_prompt_allow">తొలగించు</string> <string name="delete_browsing_data_prompt_allow">తొలగించు</string>
<!-- Onboarding -->
<!-- Text for onboarding welcome message
The first parameter is the name of the app (e.g. Firefox Preview) -->
<string name="onboarding_header">%sకి స్వాగతం!</string>
<!-- text for the Firefox Accounts section header -->
<string name="onboarding_fxa_section_header">ఇప్పటికే ఖాతా ఉందా?</string>
<!-- text for the "What's New" onboarding card header -->
<string name="onboarding_whats_new_header1">కొత్తవేమిటో చూడండి</string>
<!-- 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>
<!-- Content description (not visible, for screen readers etc.): Close onboarding screen --> <!-- Content description (not visible, for screen readers etc.): Close onboarding screen -->
<string name="onboarding_close">మూసివేయి</string> <string name="onboarding_close">మూసివేయి</string>

View File

@ -20,7 +20,9 @@
<dimen name="tab_corner_radius">8dp</dimen> <dimen name="tab_corner_radius">8dp</dimen>
<dimen name="preference_icon_drawable_size">24dp</dimen> <dimen name="preference_icon_drawable_size">24dp</dimen>
<dimen name="search_bar_search_engine_icon_padding">12dp</dimen> <dimen name="search_bar_search_engine_icon_padding">12dp</dimen>
<dimen name="search_bar_search_icon_margin">28dp</dimen>
<dimen name="search_engine_radio_button_height">48dp</dimen> <dimen name="search_engine_radio_button_height">48dp</dimen>
<dimen name="search_engine_engine_icon_height">24dp</dimen>
<dimen name="radio_button_drawable_padding">32dp</dimen> <dimen name="radio_button_drawable_padding">32dp</dimen>
<dimen name="radio_button_padding_horizontal">16dp</dimen> <dimen name="radio_button_padding_horizontal">16dp</dimen>
<dimen name="radio_button_padding_vertical">12dp</dimen> <dimen name="radio_button_padding_vertical">12dp</dimen>
@ -35,6 +37,7 @@
<dimen name="component_collection_creation_list_margin">16dp</dimen> <dimen name="component_collection_creation_list_margin">16dp</dimen>
<dimen name="exceptions_description_margin">12dp</dimen> <dimen name="exceptions_description_margin">12dp</dimen>
<dimen name="preference_seek_bar_padding">24dp</dimen> <dimen name="preference_seek_bar_padding">24dp</dimen>
<dimen name="custom_checkbox_alignment_margin">68dp</dimen>
<dimen name="context_menu_height">48dp</dimen> <dimen name="context_menu_height">48dp</dimen>
<dimen name="context_menu_x_offset">8dp</dimen> <dimen name="context_menu_x_offset">8dp</dimen>

View File

@ -2,7 +2,6 @@
<!-- This Source Code Form is subject to the terms of the Mozilla Public <!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this - License, v. 2.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/. -->
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"> xmlns:app="http://schemas.android.com/apk/res-auto">
<PreferenceCategory <PreferenceCategory
@ -28,42 +27,33 @@
<SwitchPreference <SwitchPreference
android:defaultValue="true" android:defaultValue="true"
android:key="@string/pref_key_show_search_shortcuts" android:key="@string/pref_key_show_search_shortcuts"
android:title="@string/preferences_show_search_shortcuts" android:title="@string/preferences_show_search_shortcuts" />
app:iconSpaceReserved="false"/>
<SwitchPreference <SwitchPreference
android:defaultValue="true" android:defaultValue="true"
android:key="@string/pref_key_show_clipboard_suggestions" android:key="@string/pref_key_show_clipboard_suggestions"
android:title="@string/preferences_show_clipboard_suggestions" android:title="@string/preferences_show_clipboard_suggestions" />
app:iconSpaceReserved="false" />
<SwitchPreference <SwitchPreference
android:defaultValue="true" android:defaultValue="true"
android:key="@string/pref_key_search_browsing_history" android:key="@string/pref_key_search_browsing_history"
android:title='@string/preferences_search_browsing_history' android:title='@string/preferences_search_browsing_history' />
app:iconSpaceReserved="false" />
<SwitchPreference <SwitchPreference
android:defaultValue="true" android:defaultValue="true"
android:key="@string/pref_key_search_bookmarks" android:key="@string/pref_key_search_bookmarks"
android:title='@string/preferences_search_bookmarks' android:title='@string/preferences_search_bookmarks' />
app:iconSpaceReserved="false" />
<SwitchPreference <SwitchPreference
android:defaultValue="true" android:defaultValue="true"
android:key="@string/pref_key_show_voice_search" android:key="@string/pref_key_show_voice_search"
android:title="@string/preferences_show_voice_search" android:title="@string/preferences_show_voice_search" />
app:iconSpaceReserved="false"
app:allowDividerAbove="false"/>
<SwitchPreference <SwitchPreference
android:defaultValue="true" android:defaultValue="true"
android:key="@string/pref_key_show_search_suggestions" android:key="@string/pref_key_show_search_suggestions"
android:title="@string/preferences_show_search_suggestions" android:title="@string/preferences_show_search_suggestions" />
app:iconSpaceReserved="false"
app:allowDividerAbove="false"/>
<CheckBoxPreference <CheckBoxPreference
android:defaultValue="false" android:defaultValue="false"
android:dependency="@string/pref_key_show_search_suggestions" android:dependency="@string/pref_key_show_search_suggestions"
android:key="@string/pref_key_show_search_suggestions_in_private" android:key="@string/pref_key_show_search_suggestions_in_private"
android:title="@string/preferences_show_search_suggestions_in_private" android:title="@string/preferences_show_search_suggestions_in_private"
android:layout="@layout/checkbox_left_preference" android:layout="@layout/checkbox_left_sub_preference"
app:allowDividerAbove="false" app:iconSpaceReserved="false" />
app:iconSpaceReserved="true" />
</PreferenceCategory> </PreferenceCategory>
</PreferenceScreen> </PreferenceScreen>

View File

@ -9,7 +9,7 @@
# too long. # too long.
# #
# You can use it by running this command from the project root: # You can use it by running this command from the project root:
# `ln -s ../../tools/pre-push-recommended.sh .git/hooks/pre-push` # `ln -s ../../config/pre-push-recommended.sh .git/hooks/pre-push`
# Descriptions for each gradle task below can be found in the # Descriptions for each gradle task below can be found in the
# output of `./gradlew tasks`. # output of `./gradlew tasks`.