Compare commits

..

11 Commits

Author SHA1 Message Date
bd08b8aba3 Build changes. 2017-12-04 20:07:30 +01:00
2ceb0f988b New Crowdin translations (#141)
* New translations strings.xml (Dutch)

* New translations strings.xml (Dutch)

* New translations strings.xml (Dutch)

* New translations strings.xml (Dutch)

* New translations strings.xml (Dutch)

* New translations strings.xml (Dutch)

* New translations strings.xml (Dutch)

* New translations strings.xml (Dutch)

* New translations strings.xml (Dutch)
2017-12-04 19:17:46 +01:00
4ef3b155b8 New translations strings.xml (Indonesian) (#139) 2017-12-04 13:27:48 +01:00
350e24cded Changelog. 2017-12-03 22:19:48 +01:00
1bf8a578bc Simple view pager. Closes #50. 2017-12-03 22:09:58 +01:00
4818a101cc Trying to solve #120. 2017-12-03 18:00:52 +01:00
baebf938ef Changelog. 2017-12-03 14:20:11 +01:00
fea57c7b1e New Crowdin translations (#136)
* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Spanish)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Spanish)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Spanish)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Spanish)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)

* New translations strings.xml (Indonesian)
2017-12-03 14:18:15 +01:00
113dfa68be Changelog. 2017-11-30 19:40:03 +01:00
60c6514fa1 New translations strings.xml (Turkish) 2017-11-30 19:38:40 +01:00
114485afc3 Missing changelog. 2017-11-29 20:28:27 +01:00
14 changed files with 996 additions and 884 deletions

View File

@ -1,3 +1,25 @@
**1.5.5.x**
- Completed Dutch and Indonesian translation !
- Changed versions handling.
**1.5.4.22**
- You can now scroll through the loaded articles !
**1.5.4.21**
- Spanish translation and some Indonesian !
**1.5.4.20**
- Turkish translation !
**1.5.4.19**
- Fixed an issue with crowdin configuration (and its translations)
**1.5.4.18** **1.5.4.18**
- Typo fix. - Typo fix.

View File

@ -8,19 +8,27 @@ buildscript {
} }
} }
ext {
configuration = [
buildDate: new Date()
]
}
def gitVersion() { def gitVersion() {
def process = "git describe --abbrev=0 --tags".execute() def process = "git describe --abbrev=0 --tags".execute()
return process.text.substring(1).replaceAll("\\.", "") return process.text.substring(1).replaceAll("\\.", "").trim()
} }
def versionCodeFromGit() { def versionCodeFromGit() {
println "version code " + gitVersion().toInteger() def versionCode = gitVersion() + (ext.configuration.buildDate.format("SSssmm")).toInteger()
return gitVersion().toInteger() println "version code " + versionCode
return versionCode.toInteger()
} }
def versionNameFromGit() { def versionNameFromGit() {
println "version code " + gitVersion().trim() def versionName = gitVersion() + ext.configuration.buildDate.format('yyyyMMddHHmm')
return gitVersion().trim() println "version name " + versionName
return versionName
} }
apply plugin: 'org.sonarqube' apply plugin: 'org.sonarqube'
@ -122,7 +130,7 @@ dependencies {
compile 'com.google.firebase:firebase-core:11.4.2' compile 'com.google.firebase:firebase-core:11.4.2'
compile 'com.google.firebase:firebase-config:11.4.2' compile 'com.google.firebase:firebase-config:11.4.2'
compile 'com.google.firebase:firebase-invites:11.4.2' compile 'com.google.firebase:firebase-invites:11.4.2'
compile('com.crashlytics.sdk.android:crashlytics:2.7.1@aar') { compile('com.crashlytics.sdk.android:crashlytics:2.8.0@aar') {
transitive = true; transitive = true;
} }
@ -170,6 +178,9 @@ dependencies {
compile 'com.heinrichreimersoftware:android-issue-reporter:1.3.1' compile 'com.heinrichreimersoftware:android-issue-reporter:1.3.1'
compile 'com.github.rubensousa:floatingtoolbar:1.5.1' compile 'com.github.rubensousa:floatingtoolbar:1.5.1'
// Pager
compile 'me.relex:circleindicator:1.2.2@aar'
} }
apply plugin: 'com.google.gms.google-services' apply plugin: 'com.google.gms.google-services'

View File

@ -629,9 +629,10 @@ class HomeActivity : AppCompatActivity(), SearchView.OnQueryTextListener {
} }
recyclerView.layoutManager = mLayoutManager recyclerView.layoutManager = mLayoutManager
recyclerView.setHasFixedSize(true)
if (infiniteScroll) { if (!infiniteScroll) {
recyclerView.setHasFixedSize(true)
} else {
handleInfiniteScroll() handleInfiniteScroll()
} }

View File

@ -1,209 +1,39 @@
package apps.amine.bou.readerforselfoss package apps.amine.bou.readerforselfoss
import android.content.SharedPreferences
import android.os.Bundle import android.os.Bundle
import android.preference.PreferenceManager import android.support.v4.app.FragmentManager
import android.support.customtabs.CustomTabsIntent import android.support.v4.app.FragmentStatePagerAdapter
import android.support.design.widget.FloatingActionButton
import android.support.v4.widget.NestedScrollView
import android.support.v7.app.AppCompatActivity import android.support.v7.app.AppCompatActivity
import android.text.Html import apps.amine.bou.readerforselfoss.api.selfoss.Item
import android.text.method.LinkMovementMethod import apps.amine.bou.readerforselfoss.fragments.ArticleFragment
import android.view.MenuItem
import android.view.View
import apps.amine.bou.readerforselfoss.api.mercury.MercuryApi
import apps.amine.bou.readerforselfoss.api.mercury.ParsedContent
import apps.amine.bou.readerforselfoss.utils.buildCustomTabsIntent
import apps.amine.bou.readerforselfoss.utils.customtabs.CustomTabActivityHelper
import apps.amine.bou.readerforselfoss.utils.isEmptyOrNullOrNullString
import apps.amine.bou.readerforselfoss.utils.openItemUrl
import apps.amine.bou.readerforselfoss.utils.shareLink
import com.bumptech.glide.Glide
import com.bumptech.glide.request.RequestOptions
import com.crashlytics.android.Crashlytics
import com.ftinc.scoop.Scoop
import com.github.rubensousa.floatingtoolbar.FloatingToolbar
import kotlinx.android.synthetic.main.activity_reader.* import kotlinx.android.synthetic.main.activity_reader.*
import org.sufficientlysecure.htmltextview.HtmlHttpImageGetter import me.relex.circleindicator.CircleIndicator
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
class ReaderActivity : AppCompatActivity() { class ReaderActivity : AppCompatActivity() {
private lateinit var mCustomTabActivityHelper: CustomTabActivityHelper
//private lateinit var content: HtmlTextView
private lateinit var url: String
private lateinit var contentText: String
private lateinit var contentSource: String
private lateinit var contentImage: String
private lateinit var contentTitle: String
private lateinit var fab: FloatingActionButton
override fun onStop() { private lateinit var allItems: ArrayList<Item>
super.onStop()
mCustomTabActivityHelper.unbindCustomTabsService(this)
}
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
Scoop.getInstance().apply(this)
setContentView(R.layout.activity_reader) setContentView(R.layout.activity_reader)
url = intent.getStringExtra("url") allItems = intent.getParcelableArrayListExtra<Item>("allItems")
contentText = intent.getStringExtra("content") val currentItem = intent.getIntExtra("currentItem", 0)
contentTitle = intent.getStringExtra("title")
contentImage = intent.getStringExtra("image")
contentSource = intent.getStringExtra("source")
fab = findViewById(R.id.fab) var adapter = ScreenSlidePagerAdapter(supportFragmentManager)
val mFloatingToolbar: FloatingToolbar = findViewById(R.id.floatingToolbar) pager.adapter = adapter
mFloatingToolbar.attachFab(fab) pager.currentItem = currentItem
val customTabsIntent = this@ReaderActivity.buildCustomTabsIntent() (indicator as CircleIndicator).setViewPager(pager)
mCustomTabActivityHelper = CustomTabActivityHelper()
mCustomTabActivityHelper.bindCustomTabsService(this)
val prefs = PreferenceManager.getDefaultSharedPreferences(this)
mFloatingToolbar.setClickListener(object : FloatingToolbar.ItemClickListener {
override fun onItemClick(item: MenuItem) {
when (item.itemId) {
R.id.more_action -> getContentFromMercury(customTabsIntent, prefs)
R.id.share_action -> this@ReaderActivity.shareLink(url)
R.id.open_action -> this@ReaderActivity.openItemUrl(
url,
contentText,
contentImage,
contentTitle,
contentSource,
customTabsIntent,
false,
false,
this@ReaderActivity
)
else -> Unit
}
} }
override fun onItemLongClick(item: MenuItem?) { private inner class ScreenSlidePagerAdapter(fm: FragmentManager) : FragmentStatePagerAdapter(fm) {
} override fun getCount(): Int {
}) return allItems.size
if (contentText.isEmptyOrNullOrNullString()) {
getContentFromMercury(customTabsIntent, prefs)
} else {
source.text = contentSource
titleView.text = contentTitle
tryToHandleHtml(contentText, customTabsIntent, prefs)
if (!contentImage.isEmptyOrNullOrNullString()) {
imageView.visibility = View.VISIBLE
Glide
.with(baseContext)
.asBitmap()
.load(contentImage)
.apply(RequestOptions.fitCenterTransform())
.into(imageView)
} else {
imageView.visibility = View.GONE
}
} }
nestedScrollView.setOnScrollChangeListener( override fun getItem(position: Int): ArticleFragment {
NestedScrollView.OnScrollChangeListener { _, _, scrollY, _, oldScrollY -> return ArticleFragment.newInstance(position, allItems)
if (scrollY > oldScrollY) {
fab.hide()
} else {
if (mFloatingToolbar.isShowing) mFloatingToolbar.hide() else fab.show()
} }
} }
)
content.movementMethod = LinkMovementMethod.getInstance()
}
private fun getContentFromMercury(
customTabsIntent: CustomTabsIntent,
prefs: SharedPreferences
) {
progressBar.visibility = View.VISIBLE
val parser = MercuryApi(
BuildConfig.MERCURY_KEY,
prefs.getBoolean("should_log_everything", false)
)
parser.parseUrl(url).enqueue(object : Callback<ParsedContent> {
override fun onResponse(
call: Call<ParsedContent>,
response: Response<ParsedContent>
) {
if (response.body() != null && response.body()!!.content != null && response.body()!!.content.isNotEmpty()) {
source.text = response.body()!!.domain
titleView.text = response.body()!!.title
this@ReaderActivity.url = response.body()!!.url
if (response.body()!!.content != null && !response.body()!!.content.isEmpty()) {
tryToHandleHtml(response.body()!!.content, customTabsIntent, prefs)
}
if (response.body()!!.lead_image_url != null && !response.body()!!.lead_image_url.isEmpty()) {
imageView.visibility = View.VISIBLE
Glide
.with(baseContext)
.asBitmap()
.load(response.body()!!.lead_image_url)
.apply(RequestOptions.fitCenterTransform())
.into(imageView)
} else {
imageView.visibility = View.GONE
}
nestedScrollView.scrollTo(0, 0)
progressBar.visibility = View.GONE
} else {
openInBrowserAfterFailing(customTabsIntent)
}
}
override fun onFailure(
call: Call<ParsedContent>,
t: Throwable
) = openInBrowserAfterFailing(customTabsIntent)
})
}
private fun tryToHandleHtml(
c: String,
customTabsIntent: CustomTabsIntent,
prefs: SharedPreferences
) {
try {
content.text = Html.fromHtml(c, HtmlHttpImageGetter(content, null, true), null)
//content.setHtml(response.body()!!.content, HtmlHttpImageGetter(content, null, true))
} catch (e: Exception) {
Crashlytics.setUserIdentifier(prefs.getString("unique_id", ""))
Crashlytics.log(100, "CANT_TRANSFORM_TO_HTML", e.message)
Crashlytics.logException(e)
openInBrowserAfterFailing(customTabsIntent)
}
}
private fun openInBrowserAfterFailing(customTabsIntent: CustomTabsIntent) {
progressBar.visibility = View.GONE
this@ReaderActivity.openItemUrl(
url,
contentText,
contentImage,
contentTitle,
contentSource,
customTabsIntent,
true,
false,
this@ReaderActivity
)
finish()
}
} }

View File

@ -8,6 +8,7 @@ import android.support.v7.widget.CardView
import android.support.v7.widget.RecyclerView import android.support.v7.widget.RecyclerView
import android.text.Html import android.text.Html
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.widget.ImageView.ScaleType import android.widget.ImageView.ScaleType
import android.widget.TextView import android.widget.TextView
@ -52,6 +53,7 @@ class ItemCardAdapter(
) : RecyclerView.Adapter<ItemCardAdapter.ViewHolder>() { ) : RecyclerView.Adapter<ItemCardAdapter.ViewHolder>() {
private val c: Context = app.baseContext private val c: Context = app.baseContext
private val generator: ColorGenerator = ColorGenerator.MATERIAL private val generator: ColorGenerator = ColorGenerator.MATERIAL
private val imageMaxHeight: Int = c.resources.getDimension(R.dimen.card_image_max_height).toInt()
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val v = LayoutInflater.from(c).inflate(R.layout.card_item, parent, false) as CardView val v = LayoutInflater.from(c).inflate(R.layout.card_item, parent, false) as CardView
@ -67,10 +69,17 @@ class ItemCardAdapter(
holder.mView.sourceTitleAndDate.text = itm.sourceAndDateText() holder.mView.sourceTitleAndDate.text = itm.sourceAndDateText()
if (!fullHeightCards) {
holder.mView.itemImage.maxHeight = imageMaxHeight
holder.mView.itemImage.scaleType = ScaleType.CENTER_CROP
}
if (itm.getThumbnail(c).isEmpty()) { if (itm.getThumbnail(c).isEmpty()) {
holder.mView.itemImage.visibility = View.GONE
Glide.with(c).clear(holder.mView.itemImage) Glide.with(c).clear(holder.mView.itemImage)
holder.mView.itemImage.setImageDrawable(null) holder.mView.itemImage.setImageDrawable(null)
} else { } else {
holder.mView.itemImage.visibility = View.VISIBLE
c.bitmapCenterCrop(itm.getThumbnail(c), holder.mView.itemImage) c.bitmapCenterCrop(itm.getThumbnail(c), holder.mView.itemImage)
} }
@ -183,11 +192,6 @@ class ItemCardAdapter(
private fun handleClickListeners() { private fun handleClickListeners() {
if (!fullHeightCards) {
mView.itemImage.maxHeight = c.resources.getDimension(R.dimen.card_image_max_height).toInt()
mView.itemImage.scaleType = ScaleType.CENTER_CROP
}
mView.favButton.setOnLikeListener(object : OnLikeListener { mView.favButton.setOnLikeListener(object : OnLikeListener {
override fun liked(likeButton: LikeButton) { override fun liked(likeButton: LikeButton) {
val (id) = items[adapterPosition] val (id) = items[adapterPosition]
@ -251,11 +255,9 @@ class ItemCardAdapter(
mView.setOnClickListener { mView.setOnClickListener {
c.openItemUrl( c.openItemUrl(
items,
adapterPosition,
items[adapterPosition].getLinkDecoded(), items[adapterPosition].getLinkDecoded(),
items[adapterPosition].content,
items[adapterPosition].getThumbnail(c),
items[adapterPosition].title,
items[adapterPosition].sourceAndDateText(),
customTabsIntent, customTabsIntent,
internalBrowser, internalBrowser,
articleViewer, articleViewer,

View File

@ -273,11 +273,9 @@ class ItemListAdapter(
if (!clickBehavior) { if (!clickBehavior) {
mView.setOnClickListener { mView.setOnClickListener {
c.openItemUrl( c.openItemUrl(
items,
adapterPosition,
items[adapterPosition].getLinkDecoded(), items[adapterPosition].getLinkDecoded(),
items[adapterPosition].content,
items[adapterPosition].getThumbnail(c),
items[adapterPosition].title,
items[adapterPosition].sourceAndDateText(),
customTabsIntent, customTabsIntent,
internalBrowser, internalBrowser,
articleViewer, articleViewer,
@ -292,11 +290,9 @@ class ItemListAdapter(
mView.setOnClickListener { actionBarShowHide() } mView.setOnClickListener { actionBarShowHide() }
mView.setOnLongClickListener { mView.setOnLongClickListener {
c.openItemUrl( c.openItemUrl(
items,
adapterPosition,
items[adapterPosition].getLinkDecoded(), items[adapterPosition].getLinkDecoded(),
items[adapterPosition].content,
items[adapterPosition].getThumbnail(c),
items[adapterPosition].title,
items[adapterPosition].sourceAndDateText(),
customTabsIntent, customTabsIntent,
internalBrowser, internalBrowser,
articleViewer, articleViewer,

View File

@ -0,0 +1,241 @@
package apps.amine.bou.readerforselfoss.fragments
import android.content.SharedPreferences
import android.os.Bundle
import android.preference.PreferenceManager
import android.support.customtabs.CustomTabsIntent
import android.support.design.widget.FloatingActionButton
import android.support.v4.app.Fragment
import android.support.v4.widget.NestedScrollView
import android.text.Html
import android.text.method.LinkMovementMethod
import android.view.LayoutInflater
import android.view.MenuItem
import android.view.View
import android.view.ViewGroup
import apps.amine.bou.readerforselfoss.BuildConfig
import apps.amine.bou.readerforselfoss.R
import apps.amine.bou.readerforselfoss.api.mercury.MercuryApi
import apps.amine.bou.readerforselfoss.api.mercury.ParsedContent
import apps.amine.bou.readerforselfoss.api.selfoss.Item
import apps.amine.bou.readerforselfoss.utils.buildCustomTabsIntent
import apps.amine.bou.readerforselfoss.utils.customtabs.CustomTabActivityHelper
import apps.amine.bou.readerforselfoss.utils.isEmptyOrNullOrNullString
import apps.amine.bou.readerforselfoss.utils.openItemUrl
import apps.amine.bou.readerforselfoss.utils.shareLink
import apps.amine.bou.readerforselfoss.utils.sourceAndDateText
import com.bumptech.glide.Glide
import com.bumptech.glide.request.RequestOptions
import com.crashlytics.android.Crashlytics
import com.github.rubensousa.floatingtoolbar.FloatingToolbar
import org.sufficientlysecure.htmltextview.HtmlHttpImageGetter
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
import kotlinx.android.synthetic.main.fragment_article.view.*
class ArticleFragment : Fragment() {
private lateinit var pageNumber: Number
private lateinit var allItems: ArrayList<Item>
private lateinit var mCustomTabActivityHelper: CustomTabActivityHelper
//private lateinit var content: HtmlTextView
private lateinit var url: String
private lateinit var contentText: String
private lateinit var contentSource: String
private lateinit var contentImage: String
private lateinit var contentTitle: String
private lateinit var fab: FloatingActionButton
override fun onStop() {
super.onStop()
mCustomTabActivityHelper.unbindCustomTabsService(activity)
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
pageNumber = arguments!!.getInt(ARG_POSITION)
allItems = arguments!!.getParcelableArrayList(ARG_ITEMS)
}
private lateinit var rootView: ViewGroup
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
rootView = inflater
.inflate(R.layout.fragment_article, container, false) as ViewGroup
url = allItems[pageNumber.toInt()].getLinkDecoded()
contentText = allItems[pageNumber.toInt()].content
contentTitle = allItems[pageNumber.toInt()].title
contentImage = allItems[pageNumber.toInt()].getThumbnail(activity!!)
contentSource = allItems[pageNumber.toInt()].sourceAndDateText()
fab = rootView.fab
val mFloatingToolbar: FloatingToolbar = rootView.floatingToolbar
mFloatingToolbar.attachFab(fab)
val customTabsIntent = activity!!.buildCustomTabsIntent()
mCustomTabActivityHelper = CustomTabActivityHelper()
mCustomTabActivityHelper.bindCustomTabsService(activity)
val prefs = PreferenceManager.getDefaultSharedPreferences(activity)
mFloatingToolbar.setClickListener(object : FloatingToolbar.ItemClickListener {
override fun onItemClick(item: MenuItem) {
when (item.itemId) {
R.id.more_action -> getContentFromMercury(customTabsIntent, prefs)
R.id.share_action -> activity!!.shareLink(url)
R.id.open_action -> activity!!.openItemUrl(
allItems,
pageNumber.toInt(),
url,
customTabsIntent,
false,
false,
activity!!
)
else -> Unit
}
}
override fun onItemLongClick(item: MenuItem?) {
}
})
if (contentText.isEmptyOrNullOrNullString()) {
getContentFromMercury(customTabsIntent, prefs)
} else {
rootView.source.text = contentSource
rootView.titleView.text = contentTitle
tryToHandleHtml(contentText, customTabsIntent, prefs)
if (!contentImage.isEmptyOrNullOrNullString()) {
rootView.imageView.visibility = View.VISIBLE
Glide
.with(activity!!.baseContext)
.asBitmap()
.load(contentImage)
.apply(RequestOptions.fitCenterTransform())
.into(rootView.imageView)
} else {
rootView.imageView.visibility = View.GONE
}
}
rootView.nestedScrollView.setOnScrollChangeListener(
NestedScrollView.OnScrollChangeListener { _, _, scrollY, _, oldScrollY ->
if (scrollY > oldScrollY) {
fab.hide()
} else {
if (mFloatingToolbar.isShowing) mFloatingToolbar.hide() else fab.show()
}
}
)
rootView.content.movementMethod = LinkMovementMethod.getInstance()
return rootView
}
private fun getContentFromMercury(
customTabsIntent: CustomTabsIntent,
prefs: SharedPreferences
) {
rootView.progressBar.visibility = View.VISIBLE
val parser = MercuryApi(
BuildConfig.MERCURY_KEY,
prefs.getBoolean("should_log_everything", false)
)
parser.parseUrl(url).enqueue(object : Callback<ParsedContent> {
override fun onResponse(
call: Call<ParsedContent>,
response: Response<ParsedContent>
) {
if (response.body() != null && response.body()!!.content != null && response.body()!!.content.isNotEmpty()) {
rootView.source.text = response.body()!!.domain
rootView.titleView.text = response.body()!!.title
url = response.body()!!.url
if (response.body()!!.content != null && !response.body()!!.content.isEmpty()) {
tryToHandleHtml(response.body()!!.content, customTabsIntent, prefs)
}
if (response.body()!!.lead_image_url != null && !response.body()!!.lead_image_url.isEmpty()) {
rootView.imageView.visibility = View.VISIBLE
Glide
.with(activity!!.baseContext)
.asBitmap()
.load(response.body()!!.lead_image_url)
.apply(RequestOptions.fitCenterTransform())
.into(rootView.imageView)
} else {
rootView.imageView.visibility = View.GONE
}
rootView.nestedScrollView.scrollTo(0, 0)
rootView.progressBar.visibility = View.GONE
} else {
openInBrowserAfterFailing(customTabsIntent)
}
}
override fun onFailure(
call: Call<ParsedContent>,
t: Throwable
) = openInBrowserAfterFailing(customTabsIntent)
})
}
private fun tryToHandleHtml(
c: String,
customTabsIntent: CustomTabsIntent,
prefs: SharedPreferences
) {
try {
rootView.content.text = Html.fromHtml(c, HtmlHttpImageGetter(rootView.content, null, true), null)
//content.setHtml(response.body()!!.content, HtmlHttpImageGetter(content, null, true))
} catch (e: Exception) {
Crashlytics.setUserIdentifier(prefs.getString("unique_id", ""))
Crashlytics.log(100, "CANT_TRANSFORM_TO_HTML", e.message)
Crashlytics.logException(e)
openInBrowserAfterFailing(customTabsIntent)
}
}
private fun openInBrowserAfterFailing(customTabsIntent: CustomTabsIntent) {
rootView.progressBar.visibility = View.GONE
activity!!.openItemUrl(
allItems,
pageNumber.toInt(),
url,
customTabsIntent,
true,
false,
activity!!
)
}
companion object {
private val ARG_POSITION = "position"
private val ARG_ITEMS = "items"
fun newInstance(position: Int, allItems: ArrayList<Item>): ArticleFragment {
val fragment = ArticleFragment()
val args = Bundle()
args.putInt(ARG_POSITION, position)
args.putParcelableArrayList(ARG_ITEMS, allItems)
fragment.arguments = args
return fragment
}
}
}

View File

@ -59,30 +59,17 @@ fun Context.buildCustomTabsIntent(): CustomTabsIntent {
} }
fun Context.openItemUrlInternally( fun Context.openItemUrlInternally(
allItems: ArrayList<Item>,
currentItem: Int,
linkDecoded: String, linkDecoded: String,
content: String,
image: String,
title: String,
source: String,
customTabsIntent: CustomTabsIntent, customTabsIntent: CustomTabsIntent,
articleViewer: Boolean, articleViewer: Boolean,
app: Activity app: Activity
) { ) {
if (articleViewer) { if (articleViewer) {
val intent = Intent(this, ReaderActivity::class.java) val intent = Intent(this, ReaderActivity::class.java)
intent.putParcelableArrayListExtra("allItems", allItems)
/*DragDismissIntentBuilder(this) intent.putExtra("currentItem", currentItem)
.setFullscreenOnTablets(true) // defaults to false, tablets will have padding on each side
.setDragElasticity(DragDismissIntentBuilder.DragElasticity.NORMAL) // Larger elasticities will make it easier to dismiss.
.setDrawUnderStatusBar(true)
.build(intent)*/
intent.putExtra("url", linkDecoded)
intent.putExtra("content", content)
intent.putExtra("title", title)
intent.putExtra("image", image)
intent.putExtra("source", source)
app.startActivity(intent) app.startActivity(intent)
} else { } else {
try { try {
@ -102,11 +89,9 @@ fun Context.openItemUrlInternally(
} }
fun Context.openItemUrl( fun Context.openItemUrl(
allItems: ArrayList<Item>,
currentItem: Int,
linkDecoded: String, linkDecoded: String,
content: String,
image: String,
title: String,
source: String,
customTabsIntent: CustomTabsIntent, customTabsIntent: CustomTabsIntent,
internalBrowser: Boolean, internalBrowser: Boolean,
articleViewer: Boolean, articleViewer: Boolean,
@ -124,11 +109,9 @@ fun Context.openItemUrl(
openInBrowser(linkDecoded, app) openInBrowser(linkDecoded, app)
} else { } else {
this.openItemUrlInternally( this.openItemUrlInternally(
allItems,
currentItem,
linkDecoded, linkDecoded,
content,
image,
title,
source,
customTabsIntent, customTabsIntent,
articleViewer, articleViewer,
app app

View File

@ -1,148 +1,28 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout <android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android" 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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<android.support.v4.widget.NestedScrollView <android.support.v4.view.ViewPager
android:id="@+id/nestedScrollView" android:id="@+id/pager"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="0dp"
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/imageView"
android:layout_width="0dp"
android:layout_height="200dp"
android:scaleType="centerCrop"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
/>
<TextView
android:id="@+id/source"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:textAppearance="@style/TextAppearance.AppCompat.Small"
android:textSize="12sp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageView" />
<TextView
android:id="@+id/titleView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="6dp"
android:textAppearance="@style/TextAppearance.AppCompat.Headline"
android:textStyle="bold"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/source" />
<TextView
android:id="@+id/content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="24dp"
android:paddingBottom="48dp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/titleView"
android:textColorLink="?attr/colorAccent"/>
<!--<org.sufficientlysecure.htmltextview.HtmlTextView
android:id="@+id/content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="24dp"
android:paddingBottom="48dp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/titleView" />-->
</android.support.constraint.ConstraintLayout>
</android.support.v4.widget.NestedScrollView>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<me.relex.circleindicator.CircleIndicator
android:id="@+id/indicator"
android:layout_width="match_parent"
android:layout_height="20dp"
android:background="#55000000"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
android:layout_gravity="end|bottom|right"> app:layout_constraintRight_toRightOf="parent" />
</android.support.constraint.ConstraintLayout>
<com.github.rubensousa.floatingtoolbar.FloatingToolbar
android:id="@+id/floatingToolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:layout_gravity="bottom"
app:floatingItemBackground="?attr/colorAccent"
app:floatingMenu="@menu/reader_toolbar" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_gravity="end|bottom|right"
android:layout_marginBottom="16dp"
android:layout_marginEnd="16dp"
android:layout_marginRight="16dp"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:src="@drawable/ic_add"
app:backgroundTint="?attr/colorAccent"
app:fabSize="mini"
app:rippleColor="?attr/colorAccentDark" />
</FrameLayout>
<FrameLayout
android:id="@+id/progressBar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone"
android:animateLayoutChanges="true"
android:alpha="0.8"
android:background="@color/black"
android:clickable="false">
<ProgressBar
style="?android:attr/progressBarStyleLarge"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:progressTint="?attr/colorAccent" />
</FrameLayout>
</android.support.design.widget.CoordinatorLayout>

View File

@ -0,0 +1,146 @@
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v4.widget.NestedScrollView
android:id="@+id/nestedScrollView"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/imageView"
android:layout_width="0dp"
android:layout_height="200dp"
android:scaleType="centerCrop"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
/>
<TextView
android:id="@+id/source"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:textAppearance="@style/TextAppearance.AppCompat.Small"
android:textSize="12sp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageView" />
<TextView
android:id="@+id/titleView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="6dp"
android:textAppearance="@style/TextAppearance.AppCompat.Headline"
android:textStyle="bold"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/source" />
<TextView
android:id="@+id/content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="24dp"
android:paddingBottom="48dp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/titleView"
android:textColorLink="?attr/colorAccent"/>
<!--<org.sufficientlysecure.htmltextview.HtmlTextView
android:id="@+id/content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="24dp"
android:paddingBottom="48dp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/titleView" />-->
</android.support.constraint.ConstraintLayout>
</android.support.v4.widget.NestedScrollView>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_gravity="end|bottom|right">
<com.github.rubensousa.floatingtoolbar.FloatingToolbar
android:id="@+id/floatingToolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:layout_gravity="bottom"
app:floatingItemBackground="?attr/colorAccent"
app:floatingMenu="@menu/reader_toolbar" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_gravity="end|bottom|right"
android:layout_marginBottom="16dp"
android:layout_marginEnd="16dp"
android:layout_marginRight="16dp"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:src="@drawable/ic_add"
app:backgroundTint="?attr/colorAccent"
app:fabSize="mini"
app:rippleColor="?attr/colorAccentDark" />
</FrameLayout>
<FrameLayout
android:id="@+id/progressBar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone"
android:animateLayoutChanges="true"
android:alpha="0.8"
android:background="@color/black"
android:clickable="false">
<ProgressBar
style="?android:attr/progressBarStyleLarge"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:progressTint="?attr/colorAccent" />
</FrameLayout>
</android.support.design.widget.CoordinatorLayout>

View File

@ -1,161 +1,161 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources xmlns:tools="http://schemas.android.com/tools"> <resources xmlns:tools="http://schemas.android.com/tools">
<string name="app_name">"Reader for Selfoss"</string> <string name="app_name">"Lector para Selfoss"</string>
<string name="title_activity_login">"Log in"</string> <string name="title_activity_login">"Iniciar sesión"</string>
<string name="prompt_password">"Password"</string> <string name="prompt_password">"Contraseña"</string>
<string name="prompt_http_password">"HTTP Password"</string> <string name="prompt_http_password">"Contraseña HTTP"</string>
<string name="action_sign_in">"Go"</string> <string name="action_sign_in">"Empezar"</string>
<string name="error_invalid_password">"Password not long enough"</string> <string name="error_invalid_password">"La contraseña no es suficientemente larga"</string>
<string name="error_field_required">"Field required"</string> <string name="error_field_required">"Campo requerido"</string>
<string name="prompt_url">"Url"</string> <string name="prompt_url">"Url"</string>
<string name="withLoginSwitch">"Login required ?"</string> <string name="withLoginSwitch">"Inicio de sesión requerido ?"</string>
<string name="withHttpLoginSwitch">"HTTP Login required ?"</string> <string name="withHttpLoginSwitch">"Inicio de sesión HTTP requerido ?"</string>
<string name="login_url_problem">"Oops. You may need to add a \"/\" at the end of the url."</string> <string name="login_url_problem">"Oops. Puede que necesite añadir un \"/\" al final de la url."</string>
<string name="prompt_login">"Username"</string> <string name="prompt_login">"Nombre de usuario"</string>
<string name="prompt_http_login">"HTTP Username"</string> <string name="prompt_http_login">"Nombre de usuario HTTP"</string>
<string name="label_share">"Share"</string> <string name="label_share">"Compartir"</string>
<string name="readAll">"Read all"</string> <string name="readAll">"Leer todo"</string>
<string name="action_disconnect">"Disconnect"</string> <string name="action_disconnect">"Desconectar"</string>
<string name="title_activity_settings">"Settings"</string> <string name="title_activity_settings">"Configuración"</string>
<string name="pref_header_general">"General"</string> <string name="pref_header_general">"General"</string>
<string name="pref_switch_actions_tap_title">"Tap action on the articles"</string> <string name="pref_switch_actions_tap_title">"Acción tocar en los artículos"</string>
<string name="add_source_hint_tags">"Tag1, Tag2, Tag3"</string> <string name="add_source_hint_tags">"Etiqueta1, Etiqueta2, Etiqueta3"</string>
<string name="add_source_hint_url">"Link"</string> <string name="add_source_hint_url">"Enlace"</string>
<string name="add_source_hint_name">"Name"</string> <string name="add_source_hint_name">"Nombre"</string>
<string name="add_source">"Add a source"</string> <string name="add_source">"Añadir una fuente"</string>
<string name="add_source_save">"Save"</string> <string name="add_source_save">"Guardar"</string>
<string name="wrong_infos">"Check your details again."</string> <string name="wrong_infos">"Revise sus datos de nuevo."</string>
<string name="all_posts_not_read">"All posts weren't read"</string> <string name="all_posts_not_read">"No todas las publicaciones fueron leídas"</string>
<string name="all_posts_read">"All posts were read"</string> <string name="all_posts_read">"Todas las publicaciones fueron leídas"</string>
<string name="cant_get_favs">"Can't get favorites"</string> <string name="cant_get_favs">"No se pueden obtener favoritos"</string>
<string name="cant_get_new_elements">"Can't get new articles"</string> <string name="cant_get_new_elements">"No puede recibir nuevos artículos"</string>
<string name="cant_get_read">"Can't get read articles"</string> <string name="cant_get_read">"No puede recibir artículos leídos"</string>
<string name="nothing_here">"Nothing here"</string> <string name="nothing_here">"Nada aquí"</string>
<string name="tab_new">"New"</string> <string name="tab_new">"Nuevo"</string>
<string name="tab_read">"All"</string> <string name="tab_read">"Todo"</string>
<string name="tab_favs">"Favorites"</string> <string name="tab_favs">"Favoritos"</string>
<string name="action_about">"About"</string> <string name="action_about">"Acerca de"</string>
<string name="marked_as_read">"Item read"</string> <string name="marked_as_read">"Artículo leído"</string>
<string name="undo_string">"Undo"</string> <string name="undo_string">"Deshacer"</string>
<string name="addStringNoUrl">"Log in to add sources."</string> <string name="addStringNoUrl">"Iniciar sesión para añadir fuentes."</string>
<string name="cant_get_sources">"Can't get sources list."</string> <string name="cant_get_sources">"No se puede obtener la lista de fuentes."</string>
<string name="cant_create_source">"Can't create source."</string> <string name="cant_create_source">"No se puede crear la fuente."</string>
<string name="cant_get_spouts">"Can't get spouts list."</string> <string name="cant_get_spouts">"No se puede obtener la lista de fuentes."</string>
<string name="form_not_complete">"The form is not complete"</string> <string name="form_not_complete">"El formulario no está completo"</string>
<string name="pref_header_links">"Links"</string> <string name="pref_header_links">"Enlaces"</string>
<string name="issue_tracker_link">"Issue Tracker"</string> <string name="issue_tracker_link">"Rastreador de Incidencias"</string>
<string name="issue_tracker_summary">"Report a bug or ask for a new feature"</string> <string name="issue_tracker_summary">"Reportar un error o solicitar una nueva función"</string>
<string name="warning_wrong_url">"WARNING"</string> <string name="warning_wrong_url">"ADVERTENCIA"</string>
<string name="pref_switch_card_view_title">"Card View"</string> <string name="pref_switch_card_view_title">"Vista de la tarjeta"</string>
<string name="cant_mark_favortie">"Can't mark article as favorite"</string> <string name="cant_mark_favortie">"No puede marcar el artículo como favorito"</string>
<string name="cant_unmark_favortie">"Can't remove item from favorite"</string> <string name="cant_unmark_favortie">"No se puede quitar el artículo de favoritos"</string>
<string name="share">"Share"</string> <string name="share">"Compartir"</string>
<string name="rating_prompt_title">"Enjoying the app ?"</string> <string name="rating_prompt_title">"¿Disfrutando la aplicación?"</string>
<string name="rating_prompt_yes">"Yes !"</string> <string name="rating_prompt_yes">"¡Sí!"</string>
<string name="rating_prompt_no">"Not really …"</string> <string name="rating_prompt_no">"La verdad es que no…"</string>
<string name="rating_prompt_feedback_title">"Can you tell us why ?"</string> <string name="rating_prompt_feedback_title">"¿Puede decirnos por qué?"</string>
<string name="rating_prompt_feedback_yes">"OK !"</string> <string name="rating_prompt_feedback_yes">"¡Vale!"</string>
<string name="rating_prompt_feedback_no">"Not now."</string> <string name="rating_prompt_feedback_no">"Ahora no."</string>
<string name="rating_prompt_rating_title">"Great ! Can you rate us on the Store ?"</string> <string name="rating_prompt_rating_title">"¡Excelente! ¿Puede valorarnos en la tienda?"</string>
<string name="rating_prompt_rating_yes">"Sure !"</string> <string name="rating_prompt_rating_yes">"¡Claro!"</string>
<string name="rating_prompt_rating_no">"Not right now."</string> <string name="rating_prompt_rating_no">"No en este momento."</string>
<string name="rating_prompt_thanks">"Thanks, your feedback help enhance the app !"</string> <string name="rating_prompt_thanks">"¡Gracias, sus comentarios ayudan a mejorar la aplicación!"</string>
<string name="switch_unread_count">"Display the unread count as a badge for the bottom bar."</string> <string name="switch_unread_count">"Mostrar el recuento no leído como una insignia de la barra inferior."</string>
<string name="switch_unread_count_title">"Display unread count"</string> <string name="switch_unread_count_title">"Mostrar recuento no leído"</string>
<string name="display_all_counts_title">"Display count for favorite and read"</string> <string name="display_all_counts_title">"Mostrar recuento de favoritos y leídos"</string>
<string name="menu_share_the_app">"Invite friends"</string> <string name="menu_share_the_app">"Invitar amigos"</string>
<string name="invitation_title">"Try this app for your Selfoss RSS feeds !"</string> <string name="invitation_title">"¡Prueba esta aplicación para tu contenido RSS de Selfoss!"</string>
<string name="invitation_message">"I use this app for my Selfoss RSS feeds. You may like it too !"</string> <string name="invitation_message">"Yo uso esta aplicación para mi contenido RSS de Selfoss. ¡Te puede gusta también!"</string>
<string name="invitation_cta">"Try the app"</string> <string name="invitation_cta">"Probar la aplicación"</string>
<string name="text_wrong_url">"You seem to be trying to use an invalid URL. Make sure it is correct, and if the problem persists, contact me (via the store contact link). Please note that the app needs you to be using Selfoss. You can't access RSS feeds without it."</string> <string name="text_wrong_url">"Parece estar tratando de utilizar una dirección URL inválida. Asegúrese de que sea correcta y si el problema persiste, póngase en contacto conmigo (mediante el enlace de contacto de la tienda). Tenga en cuenta que la aplicación necesita utilizar Selfoss. No se puede acceder al contenido RSS sin él."</string>
<string name="pref_general_internal_browser_title">"Open links inside the app"</string> <string name="pref_general_internal_browser_title">"Abrir enlaces dentro de la aplicación"</string>
<string name="pref_general_internal_browser_on">"Articles will open inside the app"</string> <string name="pref_general_internal_browser_on">"Los artículos se abrirán dentro de la aplicación"</string>
<string name="pref_general_internal_browser_off">"Articles will open with your default browser"</string> <string name="pref_general_internal_browser_off">"Los artículos se abrirán con tu navegador predeterminado"</string>
<string name="prefer_article_viewer_title">"Use the article viewer"</string> <string name="prefer_article_viewer_title">"Utilizar el visor de artículo"</string>
<string name="prefer_article_viewer_on">"Will use the article viewer instead of the internal browser"</string> <string name="prefer_article_viewer_on">"Se usará el visor de artículos en lugar del navegador interno"</string>
<string name="prefer_article_viewer_off">"Will use the internal browser instead of the article viewer"</string> <string name="prefer_article_viewer_off">"Se utilizará el navegador interno en lugar del visor de artículo"</string>
<string name="pref_general_category_links">"Link handling"</string> <string name="pref_general_category_links">"Control de enlaces"</string>
<string name="pref_general_category_displaying">"Displaying"</string> <string name="pref_general_category_displaying">"Mostrando"</string>
<string name="pref_general_category_actions">"Actions"</string> <string name="pref_general_category_actions">"Acciones"</string>
<string name="pref_switch_card_view_on">"The articles will be displayed as cards"</string> <string name="pref_switch_card_view_on">"Los artículos se mostrarán como tarjetas"</string>
<string name="pref_switch_card_view_off">"The articles will be displayed as a list"</string> <string name="pref_switch_card_view_off">"Los artículos se mostrarán como una lista"</string>
<string name="pref_switch_actions_tap_on">"Displays the action bar under the article"</string> <string name="pref_switch_actions_tap_on">"Muestra la barra de acción debajo del artículo"</string>
<string name="pref_switch_actions_tap_off">"When selecting an article it will open in your selected browser"</string> <string name="pref_switch_actions_tap_off">"Al seleccionar un artículo se abrirá en el navegador seleccionado"</string>
<string name="menu_home_refresh">"Update remote"</string> <string name="menu_home_refresh">"Actualizar remoto"</string>
<string name="refresh_success_response">"The remote is updated, you can now reload the articles list"</string> <string name="refresh_success_response">"Se actualizó el remoto, ahora puede recargar la lista de artículos"</string>
<string name="refresh_failer_message">"The update didn't work, try again later, or check your selfoss logs."</string> <string name="refresh_failer_message">"La actualización no funcionó, inténtalo más tarde o compruebe los registros de selfoss."</string>
<string name="refresh_in_progress">"Refresh in progress"</string> <string name="refresh_in_progress">"Actualización en progreso"</string>
<string name="new_apk_available_title">"A new APK is available."</string> <string name="new_apk_available_title">"Una nueva versión está disponible."</string>
<string name="new_apk_available_message">"A new APK is available to download on the official repository."</string> <string name="new_apk_available_message">"Un APK nuevo está disponible para descarga en el repositorio oficial."</string>
<string name="new_apk_available_get">"Download now"</string> <string name="new_apk_available_get">"Descargar ahora"</string>
<string name="new_apk_available_no">"Ignore version"</string> <string name="new_apk_available_no">"Ignorar versión"</string>
<string name="intro_hello_title">"Hi there !"</string> <string name="intro_hello_title">"¡Hola!"</string>
<string name="intro_hello_message">"Thanks for downloading the app !"</string> <string name="intro_hello_message">"¡Gracias por descargar la aplicación!"</string>
<string name="intro_needs_selfoss_title">"Before you start…"</string> <string name="intro_needs_selfoss_title">"Antes de empezar…"</string>
<string name="intro_needs_selfoss_message">"You can't use the app without a Selfoss instance."</string> <string name="intro_needs_selfoss_message">"No se puede utilizar la aplicación sin una instancia de Selfoss."</string>
<string name="intro_needs_selfoss_link">"What is Selfoss ?"</string> <string name="intro_needs_selfoss_link">"¿Qué es Selfoss?"</string>
<string name="intro_all_set_title">"All set !"</string> <string name="intro_all_set_title">"¡Todo listo!"</string>
<string name="intro_all_set_message">"You are ready to use the app. Don't forget to go to the settings page to configure your app, and where you'll find some useful links."</string> <string name="intro_all_set_message">"Estás listo para utilizar la aplicación. No olvides ir a la página de configuración para configurar su aplicación, y donde usted encontrará algunos enlaces útiles."</string>
<string name="card_height_title">Full height cards</string> <string name="card_height_title">Tarjetas de altura completas</string>
<string name="card_height_on">Cards height will adjust to its content</string> <string name="card_height_on">Altura de tarjetas se ajustará a su contenido</string>
<string name="card_height_off">Card height will be fixed</string> <string name="card_height_off">Se fijará la altura de la tarjeta</string>
<string name="source_code">Source code</string> <string name="source_code">Código fuente</string>
<string name="cant_mark_read">Can\'t mark article as read</string> <string name="cant_mark_read">No puede marcar el artículo como leído</string>
<string name="drawer_error_loading_tags">Error loading tags…</string> <string name="drawer_error_loading_tags">Error al cargar etiquetas…</string>
<string name="drawer_error_loading_sources">Error loading sources…</string> <string name="drawer_error_loading_sources">Error al cargar fuentes…</string>
<string name="drawer_item_filters">Filters</string> <string name="drawer_item_filters">Filtros</string>
<string name="drawer_action_clear">clear</string> <string name="drawer_action_clear">limpiar</string>
<string name="drawer_item_tags">Tags</string> <string name="drawer_item_tags">Etiquetas</string>
<string name="drawer_item_sources">Sources</string> <string name="drawer_item_sources">Fuentes</string>
<string name="drawer_action_edit">edit</string> <string name="drawer_action_edit">editar</string>
<string name="cache_drawer_error" tools:keep="@string/cache_drawer_error">Couldn\'t cache your drawer data</string> <string name="cache_drawer_error" tools:keep="@string/cache_drawer_error">No se pudieron guardar en caché los datos de su cajón</string>
<string name="no_tags_loaded">No tags loaded</string> <string name="no_tags_loaded">No hay etiquetas cargadas</string>
<string name="no_sources_loaded">No sources loaded</string> <string name="no_sources_loaded">No hay fuentes cargadas</string>
<string name="drawer_loading">Loading </string> <string name="drawer_loading">Cargando</string>
<string name="menu_home_search">Search</string> <string name="menu_home_search">Buscar</string>
<string name="can_delete_source">Can\'t delete the source…</string> <string name="can_delete_source">No se puede eliminar la fuente…</string>
<string name="base_url_error">There was an issue when trying to communicate with your Selfoss Instance. If the issue persists, please get in touch with me.</string> <string name="base_url_error">Hubo un problema al intentar comunicarse con su instancia de Selfoss. Si el problema persiste, póngase en contacto conmigo.</string>
<string name="pref_header_theme">Themes</string> <string name="pref_header_theme">Temas</string>
<string name="default_theme">Default</string> <string name="default_theme">Predeterminado</string>
<string name="teal_orange_theme">Teal/Orange/Light</string> <string name="teal_orange_theme">Turquesa/Naranja/Claro</string>
<string name="cyan_pink_theme">Cyan/Pink/Light</string> <string name="cyan_pink_theme">Cian/Rosa/Claro</string>
<string name="grey_orange_theme">Grey/Orange/Light</string> <string name="grey_orange_theme">Gris/Naranja/Claro</string>
<string name="blue_amber_theme">Blue/Amber/Light</string> <string name="blue_amber_theme">Azul/Ámbar/Claro</string>
<string name="indigo_pink_theme">Indigo/Pink/Light</string> <string name="indigo_pink_theme">Índigo/Rosa/Claro</string>
<string name="red_teal_theme">Red/Teal/Light</string> <string name="red_teal_theme">Rojo/Turquesa/Claro</string>
<string name="teal_orange_dark_theme">Teal/Orange/Dark</string> <string name="teal_orange_dark_theme">Turquesa/Naranja/Oscuro</string>
<string name="cyan_pink_dark_theme">Cyan/Pink/Dark</string> <string name="cyan_pink_dark_theme">Cian/Rosa/Oscuro</string>
<string name="default_dark_theme">Default/Dark</string> <string name="default_dark_theme">Predeterminado/Oscuro</string>
<string name="grey_orange_dark_theme">Grey/Orange/Dark</string> <string name="grey_orange_dark_theme">Gris/Naranja/Oscuro</string>
<string name="blue_amber_dark_theme">Blue/Amber/Dark</string> <string name="blue_amber_dark_theme">Azul/Ámbar/Oscuro</string>
<string name="indigo_pink_dark_theme">Indigo/Pink/Dark</string> <string name="indigo_pink_dark_theme">Índigo/Rosa/Oscuro</string>
<string name="red_teal_dark_theme">Red/Teal/Dark</string> <string name="red_teal_dark_theme">Rojo/Turquesa/Oscuro</string>
<string name="pref_header_debug">Debug</string> <string name="pref_header_debug">Depurar</string>
<string name="login_debug_title">Activate to log login errors</string> <string name="login_debug_title">Activar para registrar errores de inicio de sesión</string>
<string name="login_debug_on">Any error on the login page will be logged</string> <string name="login_debug_on">Cualquier error en la página de inicio de sesión se registrará</string>
<string name="login_debug_off">No log on the login page</string> <string name="login_debug_off">No hay registro en la página de inicio de sesión</string>
<string name="login_menu_debug">Debug</string> <string name="login_menu_debug">Depurar</string>
<string name="self_hosted_cert_switch">Using a self hosted certificate ?</string> <string name="self_hosted_cert_switch">Utilizando un certificado alojado propiamente ?</string>
<string name="self_signed_cert_warning">Due to security reasons, self signed certificates are not supported by default. By activating this, I\'ll not be responsible of any security problem you encounter.</string> <string name="self_signed_cert_warning">Por razones de seguridad, los certificados propios no son compatibles por defecto. Activando esto, no seré responsable de cualquier problema de seguridad que encuentre.</string>
<string name="pref_selfoss_category">Selfoss Api</string> <string name="pref_selfoss_category">Api de Selfoss</string>
<string name="pref_api_items_number_title">Loaded items number</string> <string name="pref_api_items_number_title">Número de artículos cargados</string>
<string name="read_debug_title">Read articles appearing as unread ?</string> <string name="read_debug_title">¿Leer los artículos que aparecen como no leídos?</string>
<string name="read_debug_off">No log when marking an item as read</string> <string name="read_debug_off">Sin registro al marcar un elemento como leído</string>
<string name="read_debug_on">Api calls will be logged when marking an article as read</string> <string name="read_debug_on">Llamadas a la Api se registrarán al marcar un artículo como leído</string>
<string name="summary_debug_identifier">Debug identifier</string> <string name="summary_debug_identifier">Identificador de depuración</string>
<string name="unique_id_to_clipboard">Identifier copied to your clipboard</string> <string name="unique_id_to_clipboard">Identificador copiado a su portapapeles</string>
<string name="display_header_drawer_summary">Display a header with the selfoss instance url on the lateral drawer.</string> <string name="display_header_drawer_summary">Mostrar una cabecera con la url de instancia de selfoss en el cajón lateral.</string>
<string name="display_header_drawer_title">Account header</string> <string name="display_header_drawer_title">Cabecera de cuenta</string>
<string name="login_everything_title">Logging every api calls</string> <string name="login_everything_title">Registrando todas las llamadas a la api</string>
<string name="login_everything_on">This will log every api call for debug purpose.</string> <string name="login_everything_on">Esto registrará cada llamada a la api para propósito de depuración.</string>
<string name="login_everything_off">No api call will be logged</string> <string name="login_everything_off">Ninguna llamada de api se registrará</string>
<string name="pref_general_infinite_loading_title">Load more articles on scroll</string> <string name="pref_general_infinite_loading_title">Cargar más artículos en desplazamiento</string>
<string name="translation">Translation</string> <string name="translation">Traducción</string>
<string name="cant_open_invalid_url">The item url is invalid. I\'m looking into solving this issue so the app won\'t crash.</string> <string name="cant_open_invalid_url">La url del elemento no es válida. Estoy buscando resolver este problema para que la aplicación no colapse.</string>
<string name="drawer_report_bug">Report a bug</string> <string name="drawer_report_bug">Reportar un error</string>
<string name="items_number_should_be_number">The items number should be an integer.</string> <string name="items_number_should_be_number">El número de artículos debe ser un número entero.</string>
<string name="reader_action_more">Read more</string> <string name="reader_action_more">Leer más</string>
<string name="reader_action_open">Open in browser</string> <string name="reader_action_open">Abrir en el navegador</string>
<string name="reader_action_share">Share</string> <string name="reader_action_share">Compartir</string>
</resources> </resources>

View File

@ -2,122 +2,122 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources xmlns:tools="http://schemas.android.com/tools"> <resources xmlns:tools="http://schemas.android.com/tools">
<string name="app_name">"Reader for Selfoss"</string> <string name="app_name">"Reader for Selfoss"</string>
<string name="title_activity_login">"Log in"</string> <string name="title_activity_login">"Masuk"</string>
<string name="prompt_password">"Password"</string> <string name="prompt_password">"Kata sandi"</string>
<string name="prompt_http_password">"HTTP Password"</string> <string name="prompt_http_password">"Kata sandi HTTP"</string>
<string name="action_sign_in">"Go"</string> <string name="action_sign_in">"Mulai"</string>
<string name="error_invalid_password">"Password not long enough"</string> <string name="error_invalid_password">"Kata sandinya tidak cukup panjang"</string>
<string name="error_field_required">"Field required"</string> <string name="error_field_required">"Kolom wajib diisi"</string>
<string name="prompt_url">"Url"</string> <string name="prompt_url">"URL"</string>
<string name="withLoginSwitch">"Login required ?"</string> <string name="withLoginSwitch">"Harus masuk?"</string>
<string name="withHttpLoginSwitch">"HTTP Login required ?"</string> <string name="withHttpLoginSwitch">"Otentikasi HTTP diperlukan?"</string>
<string name="login_url_problem">"Oops. You may need to add a \"/\" at the end of the url."</string> <string name="login_url_problem">"Ups. Anda mungkin harus menambahkan \"/\" di akhir url."</string>
<string name="prompt_login">"Username"</string> <string name="prompt_login">"Nama pengguna"</string>
<string name="prompt_http_login">"HTTP Username"</string> <string name="prompt_http_login">"Nama pengguna HTTP"</string>
<string name="label_share">"Share"</string> <string name="label_share">"Bagikan"</string>
<string name="readAll">"Read all"</string> <string name="readAll">"Baca semua"</string>
<string name="action_disconnect">"Disconnect"</string> <string name="action_disconnect">"Putuskan sambungan"</string>
<string name="title_activity_settings">"Settings"</string> <string name="title_activity_settings">"Pengaturan"</string>
<string name="pref_header_general">"General"</string> <string name="pref_header_general">"Umum"</string>
<string name="pref_switch_actions_tap_title">"Tap action on the articles"</string> <string name="pref_switch_actions_tap_title">"Pilih tindakan pada artikel"</string>
<string name="add_source_hint_tags">"Tag1, Tag2, Tag3"</string> <string name="add_source_hint_tags">"Tag1, Tag2, Tag 3"</string>
<string name="add_source_hint_url">"Link"</string> <string name="add_source_hint_url">"Tautan"</string>
<string name="add_source_hint_name">"Name"</string> <string name="add_source_hint_name">"Nama"</string>
<string name="add_source">"Add a source"</string> <string name="add_source">"Tambahkan sumber"</string>
<string name="add_source_save">"Save"</string> <string name="add_source_save">"Simpan"</string>
<string name="wrong_infos">"Check your details again."</string> <string name="wrong_infos">"Periksa kembali detail Anda."</string>
<string name="all_posts_not_read">"All posts weren't read"</string> <string name="all_posts_not_read">"Semua pos belum dibaca"</string>
<string name="all_posts_read">"All posts were read"</string> <string name="all_posts_read">"Semua pos sudah dibaca"</string>
<string name="cant_get_favs">"Can't get favorites"</string> <string name="cant_get_favs">"Gagal menuju favorit"</string>
<string name="cant_get_new_elements">"Can't get new articles"</string> <string name="cant_get_new_elements">"Gagal ke artikel baru"</string>
<string name="cant_get_read">"Can't get read articles"</string> <string name="cant_get_read">"Gagal ke artikel yang dibaca"</string>
<string name="nothing_here">"Nothing here"</string> <string name="nothing_here">"Tidak ada di sini"</string>
<string name="tab_new">"New"</string> <string name="tab_new">"Baru"</string>
<string name="tab_read">"All"</string> <string name="tab_read">"Semua"</string>
<string name="tab_favs">"Favorites"</string> <string name="tab_favs">"Favorit"</string>
<string name="action_about">"About"</string> <string name="action_about">"Tentang"</string>
<string name="marked_as_read">"Item read"</string> <string name="marked_as_read">"Membaca item"</string>
<string name="undo_string">"Undo"</string> <string name="undo_string">"Urung"</string>
<string name="addStringNoUrl">"Log in to add sources."</string> <string name="addStringNoUrl">"Masuk untuk menambah sumber."</string>
<string name="cant_get_sources">"Can't get sources list."</string> <string name="cant_get_sources">"Tidak bisa mendapatkan daftar sumber."</string>
<string name="cant_create_source">"Can't create source."</string> <string name="cant_create_source">"Tidak dapat membuat sumber."</string>
<string name="cant_get_spouts">"Can't get spouts list."</string> <string name="cant_get_spouts">"Tidak bisa masuk ke daftar Spouts."</string>
<string name="form_not_complete">"The form is not complete"</string> <string name="form_not_complete">"Formulirnya belum selesai"</string>
<string name="pref_header_links">"Links"</string> <string name="pref_header_links">"Tautan"</string>
<string name="issue_tracker_link">"Issue Tracker"</string> <string name="issue_tracker_link">"Pelacak Masalah"</string>
<string name="issue_tracker_summary">"Report a bug or ask for a new feature"</string> <string name="issue_tracker_summary">"Laporkan bug atau meminta fitur baru"</string>
<string name="warning_wrong_url">"WARNING"</string> <string name="warning_wrong_url">"PERINGATAN"</string>
<string name="pref_switch_card_view_title">"Card View"</string> <string name="pref_switch_card_view_title">"Tampilan Kartu"</string>
<string name="cant_mark_favortie">"Can't mark article as favorite"</string> <string name="cant_mark_favortie">"Tidak dapat menandai artikel sebagai favorit"</string>
<string name="cant_unmark_favortie">"Can't remove item from favorite"</string> <string name="cant_unmark_favortie">"Tidak dapat melepas item dari favorit"</string>
<string name="share">"Share"</string> <string name="share">"Bagikan"</string>
<string name="rating_prompt_title">"Enjoying the app ?"</string> <string name="rating_prompt_title">"Suka aplikasi ini?"</string>
<string name="rating_prompt_yes">"Yes !"</string> <string name="rating_prompt_yes">"Ya !"</string>
<string name="rating_prompt_no">"Not really …"</string> <string name="rating_prompt_no">"Tidak suka …"</string>
<string name="rating_prompt_feedback_title">"Can you tell us why ?"</string> <string name="rating_prompt_feedback_title">"Bisakah Anda memberitahu kami alasannya?"</string>
<string name="rating_prompt_feedback_yes">"OK !"</string> <string name="rating_prompt_feedback_yes">"Oke !"</string>
<string name="rating_prompt_feedback_no">"Not now."</string> <string name="rating_prompt_feedback_no">"Tidak sekarang."</string>
<string name="rating_prompt_rating_title">"Great ! Can you rate us on the Store ?"</string> <string name="rating_prompt_rating_title">"Bagus! Dapatkah Anda memberi nilai kami di Store ?"</string>
<string name="rating_prompt_rating_yes">"Sure !"</string> <string name="rating_prompt_rating_yes">"Tentu saja !"</string>
<string name="rating_prompt_rating_no">"Not right now."</string> <string name="rating_prompt_rating_no">"Jangan sekarang."</string>
<string name="rating_prompt_thanks">"Thanks, your feedback help enhance the app !"</string> <string name="rating_prompt_thanks">"Terima kasih, umpan balik Anda membantu pengembangan aplikasi !"</string>
<string name="switch_unread_count">"Display the unread count as a badge for the bottom bar."</string> <string name="switch_unread_count">"Tampilkan jumlah item yang belum dibaca di bilah bawah."</string>
<string name="switch_unread_count_title">"Display unread count"</string> <string name="switch_unread_count_title">"Tampilkan jumlah item yang belum dibaca"</string>
<string name="display_all_counts_title">"Display count for favorite and read"</string> <string name="display_all_counts_title">"Tampilkan jumlah item untuk favorit dan sudah dibaca"</string>
<string name="menu_share_the_app">"Invite friends"</string> <string name="menu_share_the_app">"Undang teman"</string>
<string name="invitation_title">"Try this app for your Selfoss RSS feeds !"</string> <string name="invitation_title">"Coba mengggunakan aplikasi ini untuk umpan RSS Selfoss Anda !"</string>
<string name="invitation_message">"I use this app for my Selfoss RSS feeds. You may like it too !"</string> <string name="invitation_message">"Saya menggunakan aplikasi ini untuk umpan RSS Selfoss saya. Anda akan menyukainya juga!"</string>
<string name="invitation_cta">"Try the app"</string> <string name="invitation_cta">"Coba aplikasi"</string>
<string name="text_wrong_url">"You seem to be trying to use an invalid URL. Make sure it is correct, and if the problem persists, contact me (via the store contact link). Please note that the app needs you to be using Selfoss. You can't access RSS feeds without it."</string> <string name="text_wrong_url">"Sepertinya Anda mencoba menggunakan URL yang tidak valid. Pastikan itu benar, jika masalah terus berlanjut, hubungi saya (melalui link kontak toko). Harap dicatat bahwa aplikasi ini mengharuskan Anda menggunakan Selfoss. Tanpa itu, Anda tidak bisa mengakses umpan RSS."</string>
<string name="pref_general_internal_browser_title">"Open links inside the app"</string> <string name="pref_general_internal_browser_title">"Buka tautan dalam aplikasi"</string>
<string name="pref_general_internal_browser_on">"Articles will open inside the app"</string> <string name="pref_general_internal_browser_on">"Artikel akan dibuka di dalam aplikasi"</string>
<string name="pref_general_internal_browser_off">"Articles will open with your default browser"</string> <string name="pref_general_internal_browser_off">"Artikel akan dibuka dalam peramban bawaan Anda"</string>
<string name="prefer_article_viewer_title">"Use the article viewer"</string> <string name="prefer_article_viewer_title">"Gunakan pratinjau artikel"</string>
<string name="prefer_article_viewer_on">"Will use the article viewer instead of the internal browser"</string> <string name="prefer_article_viewer_on">"Lihat artikel di penampil daripada peramban internal"</string>
<string name="prefer_article_viewer_off">"Will use the internal browser instead of the article viewer"</string> <string name="prefer_article_viewer_off">"Gunakan peramban internal dan bukan penampil artikel"</string>
<string name="pref_general_category_links">"Link handling"</string> <string name="pref_general_category_links">"Pengolahan tautan"</string>
<string name="pref_general_category_displaying">"Displaying"</string> <string name="pref_general_category_displaying">"Tampilan"</string>
<string name="pref_general_category_actions">"Actions"</string> <string name="pref_general_category_actions">"Tindakan"</string>
<string name="pref_switch_card_view_on">"The articles will be displayed as cards"</string> <string name="pref_switch_card_view_on">"Artikel ini akan ditampilkan dalam bentuk kartu"</string>
<string name="pref_switch_card_view_off">"The articles will be displayed as a list"</string> <string name="pref_switch_card_view_off">"Artikel ini akan ditampilkan sebagai daftar"</string>
<string name="pref_switch_actions_tap_on">"Displays the action bar under the article"</string> <string name="pref_switch_actions_tap_on">"Bilah tindakan ditampilkan di bawah artikel"</string>
<string name="pref_switch_actions_tap_off">"When selecting an article it will open in your selected browser"</string> <string name="pref_switch_actions_tap_off">"Saat memilih artikel akan terbuka di peramban pilihan Anda"</string>
<string name="menu_home_refresh">"Update remote"</string> <string name="menu_home_refresh">"Pemutakhiran jarak jauh"</string>
<string name="refresh_success_response">"The remote is updated, you can now reload the articles list"</string> <string name="refresh_success_response">"Selfoss sedang diperbarui, kini Anda bisa menyegarkan daftar artikel"</string>
<string name="refresh_failer_message">"The update didn't work, try again later, or check your selfoss logs."</string> <string name="refresh_failer_message">"Pembaruan tidak berhasil, coba lagi atau periksa log Selfoss."</string>
<string name="refresh_in_progress">"Refresh in progress"</string> <string name="refresh_in_progress">"Dlam proses menyegarkan"</string>
<string name="new_apk_available_title">"A new APK is available."</string> <string name="new_apk_available_title">"APK baru sudah tersedia."</string>
<string name="new_apk_available_message">"A new APK is available to download on the official repository."</string> <string name="new_apk_available_message">"APK baru sudah tersedia untuk diunduh di gerai resmi."</string>
<string name="new_apk_available_get">"Download now"</string> <string name="new_apk_available_get">"Unduh sekarang"</string>
<string name="new_apk_available_no">"Ignore version"</string> <string name="new_apk_available_no">"Abaikan versi"</string>
<string name="intro_hello_title">"Hi there !"</string> <string name="intro_hello_title">"Hai !"</string>
<string name="intro_hello_message">"Thanks for downloading the app !"</string> <string name="intro_hello_message">"Terima kasih telah mengunduh aplikasi ini !"</string>
<string name="intro_needs_selfoss_title">"Before you start…"</string> <string name="intro_needs_selfoss_title">"Sebelum Anda mulai…"</string>
<string name="intro_needs_selfoss_message">"You can't use the app without a Selfoss instance."</string> <string name="intro_needs_selfoss_message">"Anda tidak dapat menggunakan aplikasi ini tanpa menjalankan Selfoss."</string>
<string name="intro_needs_selfoss_link">"What is Selfoss ?"</string> <string name="intro_needs_selfoss_link">"Apa itu Selfoss ?"</string>
<string name="intro_all_set_title">"All set !"</string> <string name="intro_all_set_title">"Selesai !"</string>
<string name="intro_all_set_message">"You are ready to use the app. Don't forget to go to the settings page to configure your app, and where you'll find some useful links."</string> <string name="intro_all_set_message">"Kamu sudah siap Jangan lupa atur aplikasi konfigurasi halaman, Anda juga bisa menemukan beberapa tautan yang berguna disana."</string>
<string name="card_height_title">Full height cards</string> <string name="card_height_title">Peta tinggi penuh</string>
<string name="card_height_on">Cards height will adjust to its content</string> <string name="card_height_on">Tinggi kartu akan disesuaikan dengan konten</string>
<string name="card_height_off">Card height will be fixed</string> <string name="card_height_off">Ukuran kartu akan tetap</string>
<string name="source_code">Source code</string> <string name="source_code">Kode sumber</string>
<string name="cant_mark_read">Can\'t mark article as read</string> <string name="cant_mark_read">Tidak dapat menandai artikel sebagai telah dibaca</string>
<string name="drawer_error_loading_tags">Error loading tags</string> <string name="drawer_error_loading_tags">Kesalahan saat memuat tag…</string>
<string name="drawer_error_loading_sources">Error loading sources</string> <string name="drawer_error_loading_sources">Kesalahan saat memuat sumber</string>
<string name="drawer_item_filters">Filters</string> <string name="drawer_item_filters">Filter</string>
<string name="drawer_action_clear">clear</string> <string name="drawer_action_clear">kosongkan</string>
<string name="drawer_item_tags">Tags</string> <string name="drawer_item_tags">Tag</string>
<string name="drawer_item_sources">Sources</string> <string name="drawer_item_sources">Sumber</string>
<string name="drawer_action_edit">edit</string> <string name="drawer_action_edit">suntung</string>
<string name="cache_drawer_error" tools:keep="@string/cache_drawer_error">Couldn\'t cache your drawer data</string> <string name="cache_drawer_error" tools:keep="@string/cache_drawer_error">Data dalam tembolok tidak dapat diambil</string>
<string name="no_tags_loaded">No tags loaded</string> <string name="no_tags_loaded">Tidak ada tag yang dimuat</string>
<string name="no_sources_loaded">No sources loaded</string> <string name="no_sources_loaded">Tak ada sumber yang dimuat</string>
<string name="drawer_loading">Loading</string> <string name="drawer_loading">Memuat</string>
<string name="menu_home_search">Search</string> <string name="menu_home_search">Cari</string>
<string name="can_delete_source">Can\'t delete the source</string> <string name="can_delete_source">Tidak dapat menghapus sumber</string>
<string name="base_url_error">There was an issue when trying to communicate with your Selfoss Instance. If the issue persists, please get in touch with me.</string> <string name="base_url_error">Ada masalah saat berkomunikasi dengan Selfoss Anda. Jika masalah berlanjut, tolong hubungi saya.</string>
<string name="pref_header_theme">Themes</string> <string name="pref_header_theme">Tema</string>
<string name="default_theme">Default</string> <string name="default_theme">Bawaan</string>
<string name="teal_orange_theme">Teal/Orange/Light</string> <string name="teal_orange_theme">Teal/Orange/Light</string>
<string name="cyan_pink_theme">Cyan/Pink/Light</string> <string name="cyan_pink_theme">Cyan/Pink/Light</string>
<string name="grey_orange_theme">Grey/Orange/Light</string> <string name="grey_orange_theme">Grey/Orange/Light</string>
@ -125,37 +125,37 @@
<string name="indigo_pink_theme">Indigo/Pink/Light</string> <string name="indigo_pink_theme">Indigo/Pink/Light</string>
<string name="red_teal_theme">Red/Teal/Light</string> <string name="red_teal_theme">Red/Teal/Light</string>
<string name="teal_orange_dark_theme">Teal/Orange/Dark</string> <string name="teal_orange_dark_theme">Teal/Orange/Dark</string>
<string name="cyan_pink_dark_theme">Cyan/Pink/Dark</string> <string name="cyan_pink_dark_theme">Cyan/Pink/Gelap</string>
<string name="default_dark_theme">Default/Dark</string> <string name="default_dark_theme">Bawaan/Gelap</string>
<string name="grey_orange_dark_theme">Grey/Orange/Dark</string> <string name="grey_orange_dark_theme">Grey/Orange/Gelap</string>
<string name="blue_amber_dark_theme">Blue/Amber/Dark</string> <string name="blue_amber_dark_theme">Blue/Amber/Gelap</string>
<string name="indigo_pink_dark_theme">Indigo/Pink/Dark</string> <string name="indigo_pink_dark_theme">Indigo/Pink/Gelap</string>
<string name="red_teal_dark_theme">Red/Teal/Dark</string> <string name="red_teal_dark_theme">Red/Teal/Gelap</string>
<string name="pref_header_debug">Debug</string> <string name="pref_header_debug">Debug</string>
<string name="login_debug_title">Activate to log login errors</string> <string name="login_debug_title">Aktifkan untuk mencatat semua kesalahan koneksi</string>
<string name="login_debug_on">Any error on the login page will be logged</string> <string name="login_debug_on">Semua kesalahan koneksi akan dicatat</string>
<string name="login_debug_off">No log on the login page</string> <string name="login_debug_off">Kesalahan pada halaman masuk</string>
<string name="login_menu_debug">Debug</string> <string name="login_menu_debug">Debug</string>
<string name="self_hosted_cert_switch">Using a self hosted certificate ?</string> <string name="self_hosted_cert_switch">Sertifikat yang ditandatangani sendiri?</string>
<string name="self_signed_cert_warning">Due to security reasons, self signed certificates are not supported by default. By activating this, I\'ll not be responsible of any security problem you encounter.</string> <string name="self_signed_cert_warning">Untuk alasan keamanan, sertifikat yang ditandatangani sendiri tidak didukung secara bawaan. Jika Anda mengaktifkan item ini, saya tidak akan bertanggung jawab atas masalah keamanan yang Anda hadapi.</string>
<string name="pref_selfoss_category">Selfoss Api</string> <string name="pref_selfoss_category">Selfoss Api</string>
<string name="pref_api_items_number_title">Loaded items number</string> <string name="pref_api_items_number_title">Item nomor dimuat</string>
<string name="read_debug_title">Read articles appearing as unread ?</string> <string name="read_debug_title">Baca artikel yang ini sebagai belum dibaca ?</string>
<string name="read_debug_off">No log when marking an item as read</string> <string name="read_debug_off">Tidak ada catatan saat item ditandai sebagai telah dibaca</string>
<string name="read_debug_on">Api calls will be logged when marking an article as read</string> <string name="read_debug_on">Panggilan api dicatat saat item ditandai sebagai telah dibaca</string>
<string name="summary_debug_identifier">Debug identifier</string> <string name="summary_debug_identifier">Identifikasi debug</string>
<string name="unique_id_to_clipboard">Identifier copied to your clipboard</string> <string name="unique_id_to_clipboard">Salin pengenal ke papan klip Anda</string>
<string name="display_header_drawer_summary">Display a header with the selfoss instance url on the lateral drawer.</string> <string name="display_header_drawer_summary">Kop dengan alamat link Selfoss ditampilkan di laci lateral.</string>
<string name="display_header_drawer_title">Account header</string> <string name="display_header_drawer_title">Kop akun</string>
<string name="login_everything_title">Logging every api calls</string> <string name="login_everything_title">Catat setiap panggilan api</string>
<string name="login_everything_on">This will log every api call for debug purpose.</string> <string name="login_everything_on">Untuk debug program, ini akan mencatat setiap panggilan api.</string>
<string name="login_everything_off">No api call will be logged</string> <string name="login_everything_off">Tidak ada panggilan api yang akan dicatat</string>
<string name="pref_general_infinite_loading_title">Load more articles on scroll</string> <string name="pref_general_infinite_loading_title">Muat lebih banyak artikel saat membalik halaman</string>
<string name="translation">Translation</string> <string name="translation">Terjemahan</string>
<string name="cant_open_invalid_url">The item url is invalid. I\'m looking into solving this issue so the app won\'t crash.</string> <string name="cant_open_invalid_url">Alamat tautan proyek tidak valid. Saya mencoba memecahkan masalah ini untuk menghindari aplikasi berhenti.</string>
<string name="drawer_report_bug">Report a bug</string> <string name="drawer_report_bug">Laporkan bug</string>
<string name="items_number_should_be_number">The items number should be an integer.</string> <string name="items_number_should_be_number">Jumlah item harus berupa bilangan bulat.</string>
<string name="reader_action_more">Read more</string> <string name="reader_action_more">Baca lebih lanjut</string>
<string name="reader_action_open">Open in browser</string> <string name="reader_action_open">Buka di peramban</string>
<string name="reader_action_share">Share</string> <string name="reader_action_share">Bagikan</string>
</resources> </resources>

View File

@ -33,7 +33,7 @@
<string name="cant_get_read">"Ophalen reeds gelezen artikelen mislukt"</string> <string name="cant_get_read">"Ophalen reeds gelezen artikelen mislukt"</string>
<string name="nothing_here">"Niets gevonden"</string> <string name="nothing_here">"Niets gevonden"</string>
<string name="tab_new">"Nieuw"</string> <string name="tab_new">"Nieuw"</string>
<string name="tab_read">"All"</string> <string name="tab_read">"Alle"</string>
<string name="tab_favs">"Favorieten"</string> <string name="tab_favs">"Favorieten"</string>
<string name="action_about">"Over"</string> <string name="action_about">"Over"</string>
<string name="marked_as_read">"Artikel gelezen"</string> <string name="marked_as_read">"Artikel gelezen"</string>
@ -100,62 +100,62 @@
<string name="card_height_title">Volledige hoogte kaarten</string> <string name="card_height_title">Volledige hoogte kaarten</string>
<string name="card_height_on">Hoogte aanpassen aan de hand van kaartinhoud</string> <string name="card_height_on">Hoogte aanpassen aan de hand van kaartinhoud</string>
<string name="card_height_off">Vaste hoogte</string> <string name="card_height_off">Vaste hoogte</string>
<string name="source_code">Source code</string> <string name="source_code">Broncode</string>
<string name="cant_mark_read">Impossible de marquer l\'article comme lu</string> <string name="cant_mark_read">Impossible de marquer l\'article comme lu</string>
<string name="drawer_error_loading_tags">Error loading tags…</string> <string name="drawer_error_loading_tags">Fout bij het laden van tags…</string>
<string name="drawer_error_loading_sources">Error loading sources</string> <string name="drawer_error_loading_sources">Fout bij laden van bronnen</string>
<string name="drawer_item_filters">Filters</string> <string name="drawer_item_filters">Filters</string>
<string name="drawer_action_clear">clear</string> <string name="drawer_action_clear">wissen</string>
<string name="drawer_item_tags">Tags</string> <string name="drawer_item_tags">Tags</string>
<string name="drawer_item_sources">Sources</string> <string name="drawer_item_sources">Bronnen</string>
<string name="drawer_action_edit">edit</string> <string name="drawer_action_edit">bewerken</string>
<string name="cache_drawer_error" tools:keep="@string/cache_drawer_error">Couldn\'t cache your drawer data</string> <string name="cache_drawer_error" tools:keep="@string/cache_drawer_error">De gegevens in uw opslagruimte kunnen niet in de cache worden opgeslagen</string>
<string name="no_tags_loaded">No tags loaded</string> <string name="no_tags_loaded">Geen tags geladen</string>
<string name="no_sources_loaded">No sources loaded</string> <string name="no_sources_loaded">Geen bronnen geladen</string>
<string name="drawer_loading">Loading</string> <string name="drawer_loading">Bezig met laden</string>
<string name="menu_home_search">Zoeken</string> <string name="menu_home_search">Zoeken</string>
<string name="can_delete_source">Can\'t delete the source</string> <string name="can_delete_source">Kan de bron niet verwijderen</string>
<string name="base_url_error">There was an issue when trying to communicate with your Selfoss Instance. If the issue persists, please get in touch with me.</string> <string name="base_url_error">Er was een probleem bij het communiceren met uw Selfoss Instance. Als het probleem blijft, neem dan contact met mij op.</string>
<string name="pref_header_theme">Themes</string> <string name="pref_header_theme">Thema \'s</string>
<string name="default_theme">Default</string> <string name="default_theme">Standaard</string>
<string name="teal_orange_theme">Teal/Orange/Light</string> <string name="teal_orange_theme">Groenblauw/Oranje/Licht</string>
<string name="cyan_pink_theme">Cyan/Pink/Light</string> <string name="cyan_pink_theme">Cyaan/Roze/Licht</string>
<string name="grey_orange_theme">Grey/Orange/Light</string> <string name="grey_orange_theme">Grijs/Oranje/Licht</string>
<string name="blue_amber_theme">Blue/Amber/Light</string> <string name="blue_amber_theme">Blauw/Amber/Licht</string>
<string name="indigo_pink_theme">Indigo/Pink/Light</string> <string name="indigo_pink_theme">Indigo/Roze/Licht</string>
<string name="red_teal_theme">Red/Teal/Light</string> <string name="red_teal_theme">Rood/Groenblauwl/Licht</string>
<string name="teal_orange_dark_theme">Teal/Orange/Dark</string> <string name="teal_orange_dark_theme">Groenblauw/Oranje/Donker</string>
<string name="cyan_pink_dark_theme">Cyan/Pink/Dark</string> <string name="cyan_pink_dark_theme">Cyaan/Roze/Donker</string>
<string name="default_dark_theme">Default/Dark</string> <string name="default_dark_theme">Standaard/Donker</string>
<string name="grey_orange_dark_theme">Grey/Orange/Dark</string> <string name="grey_orange_dark_theme">Grijs/Oranje/Donker</string>
<string name="blue_amber_dark_theme">Blue/Amber/Dark</string> <string name="blue_amber_dark_theme">Blauw/Amber/Donker</string>
<string name="indigo_pink_dark_theme">Indigo/Pink/Dark</string> <string name="indigo_pink_dark_theme">Indigo/Roze/Donker</string>
<string name="red_teal_dark_theme">Red/Teal/Dark</string> <string name="red_teal_dark_theme">Rood/Groenbauw/Donker</string>
<string name="pref_header_debug">Debug</string> <string name="pref_header_debug">Fout opsporen</string>
<string name="login_debug_title">Activate to log login errors</string> <string name="login_debug_title">Activeer om login-fouten te loggen</string>
<string name="login_debug_on">Any error on the login page will be logged</string> <string name="login_debug_on">Elke fout op de inlogpagina wordt gelogd</string>
<string name="login_debug_off">No log on the login page</string> <string name="login_debug_off">Geen log op de inlogpagina</string>
<string name="login_menu_debug">Debug</string> <string name="login_menu_debug">Fout opsporen</string>
<string name="self_hosted_cert_switch">Using a self hosted certificate ?</string> <string name="self_hosted_cert_switch">Gebruik een zelf gehost certificaat?</string>
<string name="self_signed_cert_warning">Due to security reasons, self signed certificates are not supported by default. By activating this, I\'ll not be responsible of any security problem you encounter.</string> <string name="self_signed_cert_warning">Vanwege veiligheidsredenen worden zelfondertekende certificaten niet standaard ondersteund. Door dit te activeren, ben ik niet verantwoordelijk voor beveiligingsproblemen die u tegenkomt.</string>
<string name="pref_selfoss_category">Selfoss Api</string> <string name="pref_selfoss_category">Selfoss Api</string>
<string name="pref_api_items_number_title">Loaded items number</string> <string name="pref_api_items_number_title">Geladen items nummer</string>
<string name="read_debug_title">Read articles appearing as unread ?</string> <string name="read_debug_title">Gelezen artikelen verschijnen als ongelezen?</string>
<string name="read_debug_off">No log when marking an item as read</string> <string name="read_debug_off">Geen logboek bij het markeren van een artikel als gelezen</string>
<string name="read_debug_on">Api calls will be logged when marking an article as read</string> <string name="read_debug_on">Api-oproepen zullen gelogd worden wanneer een artikel als gelezen wordt gemarkeerd</string>
<string name="summary_debug_identifier">Debug identifier</string> <string name="summary_debug_identifier">ID voor foutopsporing</string>
<string name="unique_id_to_clipboard">Identifier copied to your clipboard</string> <string name="unique_id_to_clipboard">ID naar uw klembord gekopieerd</string>
<string name="display_header_drawer_summary">Display a header with the selfoss instance url on the lateral drawer.</string> <string name="display_header_drawer_summary">Laat een koptekst weergeven met de url van de selfoss instantie in de zijlade.</string>
<string name="display_header_drawer_title">Account header</string> <string name="display_header_drawer_title">Account titel</string>
<string name="login_everything_title">Logging every api calls</string> <string name="login_everything_title">Elke api-oproepen loggen</string>
<string name="login_everything_on">This will log every api call for debug purpose.</string> <string name="login_everything_on">Hiermee wordt elke api oproepen gelogt voor foutopsporingsdoeleinden.</string>
<string name="login_everything_off">No api call will be logged</string> <string name="login_everything_off">Geen api-oproep wordt gelogt</string>
<string name="pref_general_infinite_loading_title">Load more articles on scroll</string> <string name="pref_general_infinite_loading_title">Laad meer artikelen door te bladeren</string>
<string name="translation">Vertaling</string> <string name="translation">Vertaling</string>
<string name="cant_open_invalid_url">The item url is invalid. I\'m looking into solving this issue so the app won\'t crash.</string> <string name="cant_open_invalid_url">De URL is ongeldig. Ik probeer dit probleem op te lossen, zodat de toepassing niet wordt afgesloten.</string>
<string name="drawer_report_bug">Report a bug</string> <string name="drawer_report_bug">Een fout melden</string>
<string name="items_number_should_be_number">The items number should be an integer.</string> <string name="items_number_should_be_number">Het aantal items moet een geheel getal zijn.</string>
<string name="reader_action_more">Read more</string> <string name="reader_action_more">Lees meer</string>
<string name="reader_action_open">Open in browser</string> <string name="reader_action_open">Openen in browser</string>
<string name="reader_action_share">Share</string> <string name="reader_action_share">Delen</string>
</resources> </resources>

View File

@ -1,161 +1,161 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources xmlns:tools="http://schemas.android.com/tools"> <resources xmlns:tools="http://schemas.android.com/tools">
<string name="app_name">"Reader for Selfoss"</string> <string name="app_name">"Selfoss için okuyucu"</string>
<string name="title_activity_login">"Log in"</string> <string name="title_activity_login">"Giriş"</string>
<string name="prompt_password">"Password"</string> <string name="prompt_password">"Şifre"</string>
<string name="prompt_http_password">"HTTP Password"</string> <string name="prompt_http_password">"HTTP şifresi"</string>
<string name="action_sign_in">"Go"</string> <string name="action_sign_in">"Git"</string>
<string name="error_invalid_password">"Password not long enough"</string> <string name="error_invalid_password">"Parola yeterince uzun değil"</string>
<string name="error_field_required">"Field required"</string> <string name="error_field_required">"Alan gereklidir"</string>
<string name="prompt_url">"Url"</string> <string name="prompt_url">"Url"</string>
<string name="withLoginSwitch">"Login required ?"</string> <string name="withLoginSwitch">"Kullanıcı Girişi Gerekli?"</string>
<string name="withHttpLoginSwitch">"HTTP Login required ?"</string> <string name="withHttpLoginSwitch">"HTTP üyelik gerekmektedir?"</string>
<string name="login_url_problem">"Oops. You may need to add a \"/\" at the end of the url."</string> <string name="login_url_problem">"Oops. Url'nin sonuna \"/\" eklemek gerekebilir."</string>
<string name="prompt_login">"Username"</string> <string name="prompt_login">"Kullanıcı adı"</string>
<string name="prompt_http_login">"HTTP Username"</string> <string name="prompt_http_login">"HTTP kullanıcı adı"</string>
<string name="label_share">"Share"</string> <string name="label_share">"Paylaş"</string>
<string name="readAll">"Read all"</string> <string name="readAll">"Tümünü oku"</string>
<string name="action_disconnect">"Disconnect"</string> <string name="action_disconnect">"Bağlantıyı kes"</string>
<string name="title_activity_settings">"Settings"</string> <string name="title_activity_settings">"Ayarlar"</string>
<string name="pref_header_general">"General"</string> <string name="pref_header_general">"Genel"</string>
<string name="pref_switch_actions_tap_title">"Tap action on the articles"</string> <string name="pref_switch_actions_tap_title">"Makalelerdeki aksiyona dokun"</string>
<string name="add_source_hint_tags">"Tag1, Tag2, Tag3"</string> <string name="add_source_hint_tags">"Etiket1, etiket2, etiket3"</string>
<string name="add_source_hint_url">"Link"</string> <string name="add_source_hint_url">"Bağlantı"</string>
<string name="add_source_hint_name">"Name"</string> <string name="add_source_hint_name">"İsim"</string>
<string name="add_source">"Add a source"</string> <string name="add_source">"Yeni Kaynak Ekle"</string>
<string name="add_source_save">"Save"</string> <string name="add_source_save">"Kaydet"</string>
<string name="wrong_infos">"Check your details again."</string> <string name="wrong_infos">"Detaylarınızı tekrar kontrol edin."</string>
<string name="all_posts_not_read">"All posts weren't read"</string> <string name="all_posts_not_read">"Tüm mesajlar okunmadı"</string>
<string name="all_posts_read">"All posts were read"</string> <string name="all_posts_read">"Tüm mesajlar okundu"</string>
<string name="cant_get_favs">"Can't get favorites"</string> <string name="cant_get_favs">"Sık ullanılanlara ulaşılamıyor"</string>
<string name="cant_get_new_elements">"Can't get new articles"</string> <string name="cant_get_new_elements">"Yeni makalelere ulaşılamıyor"</string>
<string name="cant_get_read">"Can't get read articles"</string> <string name="cant_get_read">"Yeni makaleler okunamıyor"</string>
<string name="nothing_here">"Nothing here"</string> <string name="nothing_here">"Burada hiçbir şey yok"</string>
<string name="tab_new">"New"</string> <string name="tab_new">"Yeni"</string>
<string name="tab_read">"All"</string> <string name="tab_read">"Tüm"</string>
<string name="tab_favs">"Favorites"</string> <string name="tab_favs">"Favoriler"</string>
<string name="action_about">"About"</string> <string name="action_about">"Hakkında"</string>
<string name="marked_as_read">"Item read"</string> <string name="marked_as_read">"Öğeleri oku"</string>
<string name="undo_string">"Undo"</string> <string name="undo_string">"Geri al"</string>
<string name="addStringNoUrl">"Log in to add sources."</string> <string name="addStringNoUrl">"Kaynakları eklemek için giriş yapın."</string>
<string name="cant_get_sources">"Can't get sources list."</string> <string name="cant_get_sources">"Kaynakları listesi alınamıyor."</string>
<string name="cant_create_source">"Can't create source."</string> <string name="cant_create_source">"Kaynak oluşturulamıyor."</string>
<string name="cant_get_spouts">"Can't get spouts list."</string> <string name="cant_get_spouts">"Spouts listesine girilemiyor."</string>
<string name="form_not_complete">"The form is not complete"</string> <string name="form_not_complete">"Form tamamlanamadı"</string>
<string name="pref_header_links">"Links"</string> <string name="pref_header_links">"Bağlantılar"</string>
<string name="issue_tracker_link">"Issue Tracker"</string> <string name="issue_tracker_link">"Sorun İzleyici"</string>
<string name="issue_tracker_summary">"Report a bug or ask for a new feature"</string> <string name="issue_tracker_summary">"Bir hatayı bildir veya yeni bir özellik iste"</string>
<string name="warning_wrong_url">"WARNING"</string> <string name="warning_wrong_url">"UYARI"</string>
<string name="pref_switch_card_view_title">"Card View"</string> <string name="pref_switch_card_view_title">"Kart görünümü"</string>
<string name="cant_mark_favortie">"Can't mark article as favorite"</string> <string name="cant_mark_favortie">"Makale favori olarak işaretlenemez"</string>
<string name="cant_unmark_favortie">"Can't remove item from favorite"</string> <string name="cant_unmark_favortie">"Nesne favorilerden kaldırılamıyor"</string>
<string name="share">"Share"</string> <string name="share">"Paylaş"</string>
<string name="rating_prompt_title">"Enjoying the app ?"</string> <string name="rating_prompt_title">"Uygulamayı sevdiniz mi?"</string>
<string name="rating_prompt_yes">"Yes !"</string> <string name="rating_prompt_yes">"Evet!"</string>
<string name="rating_prompt_no">"Not really …"</string> <string name="rating_prompt_no">"Aslında değil…"</string>
<string name="rating_prompt_feedback_title">"Can you tell us why ?"</string> <string name="rating_prompt_feedback_title">"Nedenini bize söyleyebilir misiniz?"</string>
<string name="rating_prompt_feedback_yes">"OK !"</string> <string name="rating_prompt_feedback_yes">"Tamam!"</string>
<string name="rating_prompt_feedback_no">"Not now."</string> <string name="rating_prompt_feedback_no">"Henüz değil."</string>
<string name="rating_prompt_rating_title">"Great ! Can you rate us on the Store ?"</string> <string name="rating_prompt_rating_title">"Harika ! Bizi mağzada oylayabilir misin?"</string>
<string name="rating_prompt_rating_yes">"Sure !"</string> <string name="rating_prompt_rating_yes">"Tabii ki!"</string>
<string name="rating_prompt_rating_no">"Not right now."</string> <string name="rating_prompt_rating_no">"Şimdi değil."</string>
<string name="rating_prompt_thanks">"Thanks, your feedback help enhance the app !"</string> <string name="rating_prompt_thanks">"Teşekkürler, geri dönüşünü uygulamayı geliştirmede yardımcı olur!"</string>
<string name="switch_unread_count">"Display the unread count as a badge for the bottom bar."</string> <string name="switch_unread_count">"Okunmamış sayıyı, alt çubuk için bir rozet olarak görüntüleyin."</string>
<string name="switch_unread_count_title">"Display unread count"</string> <string name="switch_unread_count_title">"Okunmamış sayıyı görüntüle"</string>
<string name="display_all_counts_title">"Display count for favorite and read"</string> <string name="display_all_counts_title">"Favori ve okunan sayıları göster"</string>
<string name="menu_share_the_app">"Invite friends"</string> <string name="menu_share_the_app">"Arkadaşları davet et"</string>
<string name="invitation_title">"Try this app for your Selfoss RSS feeds !"</string> <string name="invitation_title">"Selfoss RSS yayınlarınız için bu uygulamayı deneyin!"</string>
<string name="invitation_message">"I use this app for my Selfoss RSS feeds. You may like it too !"</string> <string name="invitation_message">"Bu uygulamayı Selfoss RSS özet akışlarım için kullanıyorum. Sizin de hoşunuza gidebilir !"</string>
<string name="invitation_cta">"Try the app"</string> <string name="invitation_cta">"Uygulamayı dene"</string>
<string name="text_wrong_url">"You seem to be trying to use an invalid URL. Make sure it is correct, and if the problem persists, contact me (via the store contact link). Please note that the app needs you to be using Selfoss. You can't access RSS feeds without it."</string> <string name="text_wrong_url">"Geçersiz bir URL kullanmaya çalışıyormuş gibi görünüyorsunuz. Doğru olduğundan emin olun ve sorun devam ederse, bana ulaşın (mağaza iletişim bağlantısıyla). Uygulamanın, Selfoss'u kullanmanız gerektiğini lütfen unutmayın. RSS özet akışlarına olmadan erişemezsiniz."</string>
<string name="pref_general_internal_browser_title">"Open links inside the app"</string> <string name="pref_general_internal_browser_title">"Uygulamadaki bağlantılarıın"</string>
<string name="pref_general_internal_browser_on">"Articles will open inside the app"</string> <string name="pref_general_internal_browser_on">"Makale, uygulama içinde açılacaktır"</string>
<string name="pref_general_internal_browser_off">"Articles will open with your default browser"</string> <string name="pref_general_internal_browser_off">"Makaleler varsayılan tarayıcınızla açılır"</string>
<string name="prefer_article_viewer_title">"Use the article viewer"</string> <string name="prefer_article_viewer_title">"Makale görüntüleyiciyi kullanın"</string>
<string name="prefer_article_viewer_on">"Will use the article viewer instead of the internal browser"</string> <string name="prefer_article_viewer_on">"Dahili tarayıcı yerine makale görüntüleyicisini kullanacak"</string>
<string name="prefer_article_viewer_off">"Will use the internal browser instead of the article viewer"</string> <string name="prefer_article_viewer_off">"Makale görüntüleyicisi yerine dahili tarayıcıyı kullanacak"</string>
<string name="pref_general_category_links">"Link handling"</string> <string name="pref_general_category_links">"Bağlantı açma şekli"</string>
<string name="pref_general_category_displaying">"Displaying"</string> <string name="pref_general_category_displaying">"Gösteriliyor"</string>
<string name="pref_general_category_actions">"Actions"</string> <string name="pref_general_category_actions">"Eylemler"</string>
<string name="pref_switch_card_view_on">"The articles will be displayed as cards"</string> <string name="pref_switch_card_view_on">"Makaleler kart olarak gösterilecek"</string>
<string name="pref_switch_card_view_off">"The articles will be displayed as a list"</string> <string name="pref_switch_card_view_off">"Makaleler liste olarak gösterilecek"</string>
<string name="pref_switch_actions_tap_on">"Displays the action bar under the article"</string> <string name="pref_switch_actions_tap_on">"Makalenin altındaki eylem çubuğunu görüntüler"</string>
<string name="pref_switch_actions_tap_off">"When selecting an article it will open in your selected browser"</string> <string name="pref_switch_actions_tap_off">"Seçtiğiniz tarayıcısında bir makale seçtiğinde açılacaktır"</string>
<string name="menu_home_refresh">"Update remote"</string> <string name="menu_home_refresh">"Uzaktan güncelleştirme"</string>
<string name="refresh_success_response">"The remote is updated, you can now reload the articles list"</string> <string name="refresh_success_response">"Uzaktan güncelleştirilir, şimdi makaleler listesi yeniden yükleyebilirsiniz"</string>
<string name="refresh_failer_message">"The update didn't work, try again later, or check your selfoss logs."</string> <string name="refresh_failer_message">"Güncelleme çalışmadı, daha sonra tekrar deneyin veya selfoss günlüklerinizi kontrol edin."</string>
<string name="refresh_in_progress">"Refresh in progress"</string> <string name="refresh_in_progress">"Yenileme devam ediyor"</string>
<string name="new_apk_available_title">"A new APK is available."</string> <string name="new_apk_available_title">"Yeni bir güncelleme var."</string>
<string name="new_apk_available_message">"A new APK is available to download on the official repository."</string> <string name="new_apk_available_message">"Yeni bir APK deposu resmi indirmek kullanılabilir."</string>
<string name="new_apk_available_get">"Download now"</string> <string name="new_apk_available_get">"Şimdi indir"</string>
<string name="new_apk_available_no">"Ignore version"</string> <string name="new_apk_available_no">"Bu sürümü yoksay"</string>
<string name="intro_hello_title">"Hi there !"</string> <string name="intro_hello_title">"Selam!"</string>
<string name="intro_hello_message">"Thanks for downloading the app !"</string> <string name="intro_hello_message">"Uygulamayı indirdiğiniz için teşekkür ederiz!"</string>
<string name="intro_needs_selfoss_title">"Before you start…"</string> <string name="intro_needs_selfoss_title">"Başlamadan önce…"</string>
<string name="intro_needs_selfoss_message">"You can't use the app without a Selfoss instance."</string> <string name="intro_needs_selfoss_message">"Uygulamayı bir Selfoss örneği olmadan kullanamazsınız."</string>
<string name="intro_needs_selfoss_link">"What is Selfoss ?"</string> <string name="intro_needs_selfoss_link">"Selfoss nedir?"</string>
<string name="intro_all_set_title">"All set !"</string> <string name="intro_all_set_title">"Her şey tamam!"</string>
<string name="intro_all_set_message">"You are ready to use the app. Don't forget to go to the settings page to configure your app, and where you'll find some useful links."</string> <string name="intro_all_set_message">"Uygulamayı kullanmaya hazırsınız. Uygulamanızı yapılandırmak için ayarlar sayfasına gitmeyi ve bazı yararlı bağlantıları nereden bulacağınızı unutma."</string>
<string name="card_height_title">Full height cards</string> <string name="card_height_title">Tam boy kartlar</string>
<string name="card_height_on">Cards height will adjust to its content</string> <string name="card_height_on">Kartların yüksekliği içeriğine göre ayarlanır</string>
<string name="card_height_off">Card height will be fixed</string> <string name="card_height_off">Kart yüksekliği sabit olacak</string>
<string name="source_code">Source code</string> <string name="source_code">Kaynak kodu</string>
<string name="cant_mark_read">Can\'t mark article as read</string> <string name="cant_mark_read">Makale favori olarak işaretlenemez</string>
<string name="drawer_error_loading_tags">Error loading tags</string> <string name="drawer_error_loading_tags">Etiketler yükleme hatası</string>
<string name="drawer_error_loading_sources">Error loading sources</string> <string name="drawer_error_loading_sources">Kaynaklar yüklenirken hata oluştu</string>
<string name="drawer_item_filters">Filters</string> <string name="drawer_item_filters">Filtreler</string>
<string name="drawer_action_clear">clear</string> <string name="drawer_action_clear">temizle</string>
<string name="drawer_item_tags">Tags</string> <string name="drawer_item_tags">Etiketler</string>
<string name="drawer_item_sources">Sources</string> <string name="drawer_item_sources">Kaynaklar</string>
<string name="drawer_action_edit">edit</string> <string name="drawer_action_edit">düzenle</string>
<string name="cache_drawer_error" tools:keep="@string/cache_drawer_error">Couldn\'t cache your drawer data</string> <string name="cache_drawer_error" tools:keep="@string/cache_drawer_error">Çekmece verilerinizi önbelleğe olamaz</string>
<string name="no_tags_loaded">No tags loaded</string> <string name="no_tags_loaded">Yüklenen görüntü yok</string>
<string name="no_sources_loaded">No sources loaded</string> <string name="no_sources_loaded">Yüklenen kaynak yok</string>
<string name="drawer_loading">Loading </string> <string name="drawer_loading">Yükleniyor</string>
<string name="menu_home_search">Search</string> <string name="menu_home_search">Ara</string>
<string name="can_delete_source">Can\'t delete the source</string> <string name="can_delete_source">Kaynak silinemiyor</string>
<string name="base_url_error">There was an issue when trying to communicate with your Selfoss Instance. If the issue persists, please get in touch with me.</string> <string name="base_url_error">Selfoss Örneğinizle iletişim kurmaya çalışırken bir sorun oluştu. Sorun devam ederse, lütfen benimle iletişime geçin.</string>
<string name="pref_header_theme">Themes</string> <string name="pref_header_theme">Temalar</string>
<string name="default_theme">Default</string> <string name="default_theme">Varsayılan</string>
<string name="teal_orange_theme">Teal/Orange/Light</string> <string name="teal_orange_theme">Deniz mavisi/turuncu/ışık</string>
<string name="cyan_pink_theme">Cyan/Pink/Light</string> <string name="cyan_pink_theme">Camgöbeği/pembe/ışık</string>
<string name="grey_orange_theme">Grey/Orange/Light</string> <string name="grey_orange_theme">Gri/turuncu/ışık</string>
<string name="blue_amber_theme">Blue/Amber/Light</string> <string name="blue_amber_theme">Mavi/Amber/ışık</string>
<string name="indigo_pink_theme">Indigo/Pink/Light</string> <string name="indigo_pink_theme">Çivit/Pembe/Işık</string>
<string name="red_teal_theme">Red/Teal/Light</string> <string name="red_teal_theme">Kırmızı/deniz mavisi/ışık</string>
<string name="teal_orange_dark_theme">Teal/Orange/Dark</string> <string name="teal_orange_dark_theme">Deniz mavisi/turuncu/koyu</string>
<string name="cyan_pink_dark_theme">Cyan/Pink/Dark</string> <string name="cyan_pink_dark_theme">Camgöbeği/pembe/koyu</string>
<string name="default_dark_theme">Default/Dark</string> <string name="default_dark_theme">Varsayılan/koyu</string>
<string name="grey_orange_dark_theme">Grey/Orange/Dark</string> <string name="grey_orange_dark_theme">Gri/turuncu/koyu</string>
<string name="blue_amber_dark_theme">Blue/Amber/Dark</string> <string name="blue_amber_dark_theme">Mavi/Kehribar/koyu</string>
<string name="indigo_pink_dark_theme">Indigo/Pink/Dark</string> <string name="indigo_pink_dark_theme">Çivit/Pembe/Işık</string>
<string name="red_teal_dark_theme">Red/Teal/Dark</string> <string name="red_teal_dark_theme">Kırmızı/deniz mavisi/koyu</string>
<string name="pref_header_debug">Debug</string> <string name="pref_header_debug">Hata ayıklama</string>
<string name="login_debug_title">Activate to log login errors</string> <string name="login_debug_title">Giriş hatalarını kaydetmek için etkinleştir</string>
<string name="login_debug_on">Any error on the login page will be logged</string> <string name="login_debug_on">Oturum açma sayfasındaki herhangi bir hata günlüğe kaydedilecek</string>
<string name="login_debug_off">No log on the login page</string> <string name="login_debug_off">Oturum açma sayfasında oturum yok</string>
<string name="login_menu_debug">Debug</string> <string name="login_menu_debug">Hata ayıklama</string>
<string name="self_hosted_cert_switch">Using a self hosted certificate ?</string> <string name="self_hosted_cert_switch">Kendi kendine barındırılan bir sertifika mı kullanıyorsunuz?</string>
<string name="self_signed_cert_warning">Due to security reasons, self signed certificates are not supported by default. By activating this, I\'ll not be responsible of any security problem you encounter.</string> <string name="self_signed_cert_warning">Güvenlik nedeniyle, kendinden imzalı sertifikalar varsayılan olarak desteklenmez. Bunu etkinleştirerek karşılaştığınız herhangi bir güvenlik sorununun sorumluluğunu almayacağım.</string>
<string name="pref_selfoss_category">Selfoss Api</string> <string name="pref_selfoss_category">Selfoss Uygulaması</string>
<string name="pref_api_items_number_title">Loaded items number</string> <string name="pref_api_items_number_title">Yüklenen öğe numarası</string>
<string name="read_debug_title">Read articles appearing as unread ?</string> <string name="read_debug_title">Okunmamış makaleleri görüntüle?</string>
<string name="read_debug_off">No log when marking an item as read</string> <string name="read_debug_off">Bir öğeyi işaretlediğinde günlük yok</string>
<string name="read_debug_on">Api calls will be logged when marking an article as read</string> <string name="read_debug_on">Bir makaleyi okundu olarak işaretlerken Api çağrıları günlüğe kaydedilir</string>
<string name="summary_debug_identifier">Debug identifier</string> <string name="summary_debug_identifier">Hata ayıklama tanıtıcısı</string>
<string name="unique_id_to_clipboard">Identifier copied to your clipboard</string> <string name="unique_id_to_clipboard">Tanımlayıcı panonuza kopyalanır</string>
<string name="display_header_drawer_summary">Display a header with the selfoss instance url on the lateral drawer.</string> <string name="display_header_drawer_summary">Selfoss örneği url\'li bir üstbilgi, yan çekmece üzerine gösterin.</string>
<string name="display_header_drawer_title">Account header</string> <string name="display_header_drawer_title">Hesap başlığı</string>
<string name="login_everything_title">Logging every api calls</string> <string name="login_everything_title">Bütün api aramalarına giriyor</string>
<string name="login_everything_on">This will log every api call for debug purpose.</string> <string name="login_everything_on">Bu, her api çağrısını hata ayıklama amacına yönelik olarak günlüğe kaydeder.</string>
<string name="login_everything_off">No api call will be logged</string> <string name="login_everything_off">Hiçbir api çağrısı günlüğe kaydedilmez</string>
<string name="pref_general_infinite_loading_title">Load more articles on scroll</string> <string name="pref_general_infinite_loading_title">Kaydırma üzerine daha fazla makale yükleyin</string>
<string name="translation">Translation</string> <string name="translation">Çeviri</string>
<string name="cant_open_invalid_url">The item url is invalid. I\'m looking into solving this issue so the app won\'t crash.</string> <string name="cant_open_invalid_url">Öğe url geçersiz. Uygulama çökmeyeceği için bu sorunu çözmeye çalışıyorum.</string>
<string name="drawer_report_bug">Report a bug</string> <string name="drawer_report_bug">Hata bildir</string>
<string name="items_number_should_be_number">The items number should be an integer.</string> <string name="items_number_should_be_number">Öğe sayısı bir tamsayı olmalıdır.</string>
<string name="reader_action_more">Read more</string> <string name="reader_action_more">Daha fazlasını görüntüle</string>
<string name="reader_action_open">Open in browser</string> <string name="reader_action_open">Tarayıcıda aç</string>
<string name="reader_action_share">Share</string> <string name="reader_action_share">Paylaş</string>
</resources> </resources>