1
0
mirror of https://github.com/AllanWang/Frost-for-Facebook.git synced 2024-11-08 20:12:39 +01:00

Disable more components if web only

This commit is contained in:
Allan Wang 2019-08-06 21:48:07 -07:00
parent ae6709598c
commit 2afb85489e
No known key found for this signature in database
GPG Key ID: C93E3F9C679D7A56
4 changed files with 16 additions and 8 deletions

View File

@ -635,12 +635,11 @@ abstract class BaseMainActivity : BaseActivity(), MainActivityContract,
override fun getPageTitle(position: Int): CharSequence = getString(pages[position].titleId)
override fun getItemPosition(fragment: Any) =
if (fragment !is BaseFragment)
POSITION_UNCHANGED
else if (fragment is WebFragment || fragment.valid)
POSITION_UNCHANGED
else
POSITION_NONE
when {
fragment !is BaseFragment -> POSITION_UNCHANGED
fragment is WebFragment || fragment.valid -> POSITION_UNCHANGED
else -> POSITION_NONE
}
}
override val lowerVideoPadding: PointF

View File

@ -67,7 +67,7 @@ abstract class BaseFragment : Fragment(), CoroutineScope, FragmentContract, Dyna
data: FbItem,
position: Int
): BaseFragment {
val fragment = if (!useFallback) base() else WebFragment()
val fragment = if (useFallback || Prefs.webOnly) WebFragment() else base()
val d = if (data == FbItem.FEED) FeedSort(Prefs.feedSort).item else data
fragment.withArguments(
ARG_URL to d.url,

View File

@ -31,6 +31,7 @@ import com.pitchedapps.frost.utils.EnumBundle
import com.pitchedapps.frost.utils.EnumBundleCompanion
import com.pitchedapps.frost.utils.EnumCompanion
import com.pitchedapps.frost.utils.L
import com.pitchedapps.frost.utils.Prefs
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
@ -162,13 +163,17 @@ class FrostRequestService : BaseJobService() {
override fun onStartJob(params: JobParameters?): Boolean {
super.onStartJob(params)
if (Prefs.webOnly) {
L.i { "Web only; skipping request service" }
return false
}
val bundle = params?.extras
if (bundle == null) {
L.eThrow("Launched ${this::class.java.simpleName} without param data")
return false
}
val cookie = bundle.getCookie()
if (cookie.isNullOrBlank()) {
if (cookie.isBlank()) {
L.eThrow("Launched ${this::class.java.simpleName} without cookie")
return false
}

View File

@ -72,6 +72,10 @@ class NotificationService : BaseJobService() {
override fun onStartJob(params: JobParameters?): Boolean {
super.onStartJob(params)
L.i { "Fetching notifications" }
if (Prefs.webOnly) {
L.i { "Web only mode; skipping notification service" }
return false
}
launch {
try {
sendNotifications(params)