|
@@ -80,7 +80,8 @@ class ReadRssActivity : VMBaseActivity<ActivityRssReadBinding, ReadRssViewModel>
|
|
|
ALLOW_ALL,
|
|
ALLOW_ALL,
|
|
|
ASK_ALWAYS,
|
|
ASK_ALWAYS,
|
|
|
ASK_CROSS_ORIGIN,
|
|
ASK_CROSS_ORIGIN,
|
|
|
- BLOCK_CROSS_ORIGIN;
|
|
|
|
|
|
|
+ BLOCK_CROSS_ORIGIN,
|
|
|
|
|
+ BLOCK_ALL;
|
|
|
|
|
|
|
|
companion object {
|
|
companion object {
|
|
|
fun fromString(value: String?): RedirectPolicy {
|
|
fun fromString(value: String?): RedirectPolicy {
|
|
@@ -245,6 +246,7 @@ class ReadRssActivity : VMBaseActivity<ActivityRssReadBinding, ReadRssViewModel>
|
|
|
RedirectPolicy.ASK_ALWAYS -> R.id.menu_redirect_ask_always
|
|
RedirectPolicy.ASK_ALWAYS -> R.id.menu_redirect_ask_always
|
|
|
RedirectPolicy.ASK_CROSS_ORIGIN -> R.id.menu_redirect_ask_cross_origin
|
|
RedirectPolicy.ASK_CROSS_ORIGIN -> R.id.menu_redirect_ask_cross_origin
|
|
|
RedirectPolicy.BLOCK_CROSS_ORIGIN -> R.id.menu_redirect_block_cross_origin
|
|
RedirectPolicy.BLOCK_CROSS_ORIGIN -> R.id.menu_redirect_block_cross_origin
|
|
|
|
|
+ RedirectPolicy.BLOCK_ALL -> R.id.menu_redirect_block_all
|
|
|
}
|
|
}
|
|
|
menu.findItem(menuItemId)?.isChecked = true
|
|
menu.findItem(menuItemId)?.isChecked = true
|
|
|
}
|
|
}
|
|
@@ -255,6 +257,7 @@ class ReadRssActivity : VMBaseActivity<ActivityRssReadBinding, ReadRssViewModel>
|
|
|
R.id.menu_redirect_ask_always -> RedirectPolicy.ASK_ALWAYS
|
|
R.id.menu_redirect_ask_always -> RedirectPolicy.ASK_ALWAYS
|
|
|
R.id.menu_redirect_ask_cross_origin -> RedirectPolicy.ASK_CROSS_ORIGIN
|
|
R.id.menu_redirect_ask_cross_origin -> RedirectPolicy.ASK_CROSS_ORIGIN
|
|
|
R.id.menu_redirect_block_cross_origin -> RedirectPolicy.BLOCK_CROSS_ORIGIN
|
|
R.id.menu_redirect_block_cross_origin -> RedirectPolicy.BLOCK_CROSS_ORIGIN
|
|
|
|
|
+ R.id.menu_redirect_block_all -> RedirectPolicy.BLOCK_ALL
|
|
|
else -> RedirectPolicy.ALLOW_ALL
|
|
else -> RedirectPolicy.ALLOW_ALL
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -370,9 +373,8 @@ class ReadRssActivity : VMBaseActivity<ActivityRssReadBinding, ReadRssViewModel>
|
|
|
|
|
|
|
|
fun updateRedirectPolicy(policy: RedirectPolicy) {
|
|
fun updateRedirectPolicy(policy: RedirectPolicy) {
|
|
|
viewModel.rssSource?.let { source ->
|
|
viewModel.rssSource?.let { source ->
|
|
|
- source.redirectPolicy = policy.name
|
|
|
|
|
|
|
+ viewModel.updateRssSourceRedirectPolicy(source.sourceUrl, policy.name)
|
|
|
redirectPolicy = policy
|
|
redirectPolicy = policy
|
|
|
- viewModel.updateRssSourceRedirectPolicy(source.sourceUrl)
|
|
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -487,6 +489,7 @@ class ReadRssActivity : VMBaseActivity<ActivityRssReadBinding, ReadRssViewModel>
|
|
|
|
|
|
|
|
return when (redirectPolicy) {
|
|
return when (redirectPolicy) {
|
|
|
RedirectPolicy.ALLOW_ALL -> false
|
|
RedirectPolicy.ALLOW_ALL -> false
|
|
|
|
|
+ RedirectPolicy.BLOCK_ALL -> true
|
|
|
RedirectPolicy.ASK_ALWAYS -> {
|
|
RedirectPolicy.ASK_ALWAYS -> {
|
|
|
askUser(fromUrl, toUrl) { if (it) view.loadUrl(toUrl) }
|
|
askUser(fromUrl, toUrl) { if (it) view.loadUrl(toUrl) }
|
|
|
true
|
|
true
|