This commit is contained in:
Amine Bou 2017-12-10 17:45:34 +01:00
parent dc2ef39fc6
commit 6c89a3b77c
38 changed files with 280 additions and 100 deletions

View File

@ -1,19 +1,20 @@
**1.5.5.x (didn't last long) AND 1.5.6.x**
- Completed Dutch, Indonesian and Portuguese translations !
- Fixed #142, #144, #147.
- Added an animation to the viewpager.
- Changed versions handling.
- Added an option to use a webview in the article viewer (see #149)
- Toolbar in reader activity.
- Marking items as read on scroll (with settings to enable/disable).
- Swapped the title and subtitle in the article viewer.
- Added an animation to the viewpager.
- Completed Dutch, Indonesian and Portuguese translations !
- Fixed #142, #144, #147.
- Changed versions handling.
**1.5.4.22**
- You can now scroll through the loaded articles !

View File

@ -71,6 +71,12 @@
<meta-data
android:name="apps.amine.bou.readerforselfoss.utils.glide.SelfSignedGlideModule"
android:value="GlideModule" />
<meta-data android:name="android.webkit.WebView.MetricsOptOut"
android:value="true" />
<meta-data android:name="android.webkit.WebView.EnableSafeBrowsing"
android:value="true" />
</application>
</manifest>

View File

@ -27,6 +27,8 @@ class ReaderActivity : AppCompatActivity() {
private var markOnScroll: Boolean = false
private var useWebview: Boolean = false
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Scoop.getInstance().apply(this)
@ -42,6 +44,8 @@ class ReaderActivity : AppCompatActivity() {
val debugReadingItems = sharedPref.getBoolean("read_debug", false)
val userIdentifier = sharedPref.getString("unique_id", "")
markOnScroll = sharedPref.getBoolean("mark_on_scroll", false)
useWebview = sharedPref.getBoolean("prefer_webview_in_article_viewer", false)
if (allItems.isEmpty()) {
Crashlytics.setUserIdentifier(userIdentifier)
@ -148,7 +152,7 @@ class ReaderActivity : AppCompatActivity() {
}
override fun getItem(position: Int): ArticleFragment {
return ArticleFragment.newInstance(position, allItems)
return ArticleFragment.newInstance(position, allItems, useWebview)
}
}

View File

@ -1,6 +1,7 @@
package apps.amine.bou.readerforselfoss.fragments
import android.content.SharedPreferences
import android.os.Build
import android.os.Bundle
import android.preference.PreferenceManager
import android.support.customtabs.CustomTabsIntent
@ -9,10 +10,13 @@ import android.support.v4.app.Fragment
import android.support.v4.widget.NestedScrollView
import android.text.Html
import android.text.method.LinkMovementMethod
import android.util.Log
import android.util.TypedValue
import android.view.LayoutInflater
import android.view.MenuItem
import android.view.View
import android.view.ViewGroup
import android.webkit.WebSettings
import apps.amine.bou.readerforselfoss.BuildConfig
import apps.amine.bou.readerforselfoss.R
import apps.amine.bou.readerforselfoss.api.mercury.MercuryApi
@ -28,19 +32,16 @@ import com.bumptech.glide.Glide
import com.bumptech.glide.request.RequestOptions
import com.crashlytics.android.Crashlytics
import com.github.rubensousa.floatingtoolbar.FloatingToolbar
import kotlinx.android.synthetic.main.fragment_article.view.*
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
@ -48,6 +49,8 @@ class ArticleFragment : Fragment() {
private lateinit var contentTitle: String
private lateinit var fab: FloatingActionButton
private var useWebview: Boolean = false
override fun onStop() {
super.onStop()
mCustomTabActivityHelper.unbindCustomTabsService(activity)
@ -57,6 +60,7 @@ class ArticleFragment : Fragment() {
super.onCreate(savedInstanceState)
pageNumber = arguments!!.getInt(ARG_POSITION)
allItems = arguments!!.getParcelableArrayList(ARG_ITEMS)
useWebview = arguments!!.getBoolean(ARG_WEBVIEW)
}
private lateinit var rootView: ViewGroup
@ -85,27 +89,29 @@ class ArticleFragment : Fragment() {
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
}
}
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?) {
}
})
override fun onItemLongClick(item: MenuItem?) {
}
}
)
if (contentText.isEmptyOrNullOrNullString()) {
@ -113,7 +119,12 @@ class ArticleFragment : Fragment() {
} else {
rootView.source.text = contentSource
rootView.titleView.text = contentTitle
tryToHandleHtml(contentText, customTabsIntent, prefs)
if (!useWebview) {
htmlToTextview(contentText, customTabsIntent, prefs)
} else {
htmlToWebview(contentText)
}
if (!contentImage.isEmptyOrNullOrNullString()) {
rootView.imageView.visibility = View.VISIBLE
@ -138,7 +149,9 @@ class ArticleFragment : Fragment() {
}
)
rootView.content.movementMethod = LinkMovementMethod.getInstance()
if (!useWebview) {
rootView.content.movementMethod = LinkMovementMethod.getInstance()
}
return rootView
}
@ -153,56 +166,69 @@ class ArticleFragment : Fragment() {
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
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()!!.content != null && !response.body()!!.content.isEmpty()) {
if (!useWebview) {
htmlToTextview(
response.body()!!.content,
customTabsIntent,
prefs
)
} else {
htmlToWebview(response.body()!!.content)
}
}
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)
}
}
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)
}
}
override fun onFailure(
call: Call<ParsedContent>,
t: Throwable
) = openInBrowserAfterFailing(customTabsIntent)
})
)
}
private fun tryToHandleHtml(
private fun htmlToTextview(
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))
rootView.content.visibility = View.VISIBLE
rootView.content.text = Html.fromHtml(
c,
HtmlHttpImageGetter(rootView.content, null, true),
null
)
} catch (e: Exception) {
Crashlytics.setUserIdentifier(prefs.getString("unique_id", ""))
Crashlytics.log(100, "CANT_TRANSFORM_TO_HTML", e.message)
@ -211,6 +237,42 @@ class ArticleFragment : Fragment() {
}
}
private fun htmlToWebview(c: String) {
val attrBackground = TypedValue()
activity!!.baseContext.theme.resolveAttribute(
android.R.attr.colorBackground,
attrBackground,
true
)
val defaultColor = TypedValue()
activity!!.baseContext.theme.resolveAttribute(
android.R.attr.colorAccent,
defaultColor,
true
)
val accentColor = fab.backgroundTintList?.defaultColor ?: defaultColor.data
val stringColor = String.format("#%06X", 0xFFFFFF and accentColor)
rootView.webcontent.visibility = View.VISIBLE
rootView.webcontent.setBackgroundColor(attrBackground.data)
rootView.webcontent.settings.useWideViewPort = true
rootView.webcontent.settings.loadWithOverviewMode = true
rootView.webcontent.settings.javaScriptEnabled = false
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
rootView.webcontent.settings.layoutAlgorithm = WebSettings.LayoutAlgorithm.TEXT_AUTOSIZING
} else {
rootView.webcontent.settings.layoutAlgorithm = WebSettings.LayoutAlgorithm.SINGLE_COLUMN
}
rootView.webcontent.loadData(
"<style>img{display: inline-block;height: auto; width: 100%; max-width: 100%;} a{color: $stringColor}</style>$c",
"text/html; charset=utf-8",
"utf-8"
)
}
private fun openInBrowserAfterFailing(customTabsIntent: CustomTabsIntent) {
rootView.progressBar.visibility = View.GONE
activity!!.openItemUrl(
@ -224,15 +286,21 @@ class ArticleFragment : Fragment() {
)
}
companion object {
private val ARG_POSITION = "position"
private val ARG_ITEMS = "items"
private val ARG_WEBVIEW = "userWebview"
fun newInstance(position: Int, allItems: ArrayList<Item>): ArticleFragment {
fun newInstance(
position: Int,
allItems: ArrayList<Item>,
webview: Boolean
): ArticleFragment {
Log.e("TRUC", "uses webview ? $webview")
val fragment = ArticleFragment()
val args = Bundle()
args.putInt(ARG_POSITION, position)
args.putBoolean(ARG_WEBVIEW, webview)
args.putParcelableArrayList(ARG_ITEMS, allItems)
fragment.arguments = args
return fragment

View File

@ -3,7 +3,8 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants">
<android.support.v4.widget.NestedScrollView
android:id="@+id/nestedScrollView"
@ -52,6 +53,23 @@
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageView" />
<WebView
android:id="@+id/webcontent"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textColorLink="?attr/colorAccent"
android:visibility="gone"
android:layout_marginLeft="16dp"
android:layout_marginRight="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/source"
tools:visibility="visible" />
<TextView
android:id="@+id/content"
android:layout_width="0dp"
@ -64,23 +82,8 @@
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/source" />
<!--<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" />-->
app:layout_constraintTop_toBottomOf="@+id/source"
android:visibility="gone"/>
</android.support.constraint.ConstraintLayout>
</android.support.v4.widget.NestedScrollView>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Abrir en el navegador</string>
<string name="reader_action_share">Compartir</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Ouvrir</string>
<string name="reader_action_share">Partager</string>
<string name="pref_switch_actions_pager_scroll">Marquer les articles comme lus à la navigation dans le lecteur d\'article.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Buka di peramban</string>
<string name="reader_action_share">Bagikan</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Openen in browser</string>
<string name="reader_action_share">Delen</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Abrir no navegador</string>
<string name="reader_action_share">Compartilhar</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Abrir no browser</string>
<string name="reader_action_share">Compartilhar</string>
<string name="pref_switch_actions_pager_scroll">Artigos de marca como lida quando passar entre artigos.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Tarayıcıda aç</string>
<string name="reader_action_share">Paylaş</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">在浏览器中打开</string>
<string name="reader_action_share">分享</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -159,4 +159,7 @@
<string name="reader_action_open">在浏览器中打开</string>
<string name="reader_action_share">分享</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -162,4 +162,7 @@
<string name="reader_action_open">Open in browser</string>
<string name="reader_action_share">Share</string>
<string name="pref_switch_actions_pager_scroll">Mark articles as read when swiping between articles.</string>
<string name="prefer_webview_in_article_viewer_title">Use a webview in the article viewer (can be slower)</string>
<string name="prefer_webview_in_article_viewer_on">Using the webview for the content of the article viewer. Urls, gifs and images will be better handled, but may be slower.</string>
<string name="prefer_webview_in_article_viewer_off">The content of the article will be displayed as simple text with links and images. Urls may not work, and gifs won\'t load.</string>
</resources>

View File

@ -1,11 +1,5 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<!--<SwitchPreference
android:defaultValue="false"
android:key="preferred_browser"
android:summary="@string/pref_switch_browser"
android:title="@string/pref_switch_browser_title"/>-->
<PreferenceCategory
android:title="@string/pref_selfoss_category">
@ -39,6 +33,14 @@
android:summaryOff="@string/prefer_article_viewer_off"
android:summaryOn="@string/prefer_article_viewer_on"
android:title="@string/prefer_article_viewer_title" />
<SwitchPreference
android:defaultValue="false"
android:dependency="prefer_article_viewer"
android:key="prefer_webview_in_article_viewer"
android:summaryOff="@string/prefer_webview_in_article_viewer_off"
android:summaryOn="@string/prefer_webview_in_article_viewer_on"
android:title="@string/prefer_webview_in_article_viewer_title" />
<PreferenceCategory
android:title="@string/pref_general_category_displaying">