Add warning about F-Droid build support in More screen

This commit is contained in:
arkon
2022-10-30 15:50:09 -04:00
parent bdeb209d43
commit 725fcbba0e
7 changed files with 45 additions and 20 deletions

View File

@@ -9,7 +9,7 @@ import eu.kanade.tachiyomi.network.NetworkHelper
import eu.kanade.tachiyomi.network.await
import eu.kanade.tachiyomi.network.parseAs
import eu.kanade.tachiyomi.util.lang.withIOContext
import eu.kanade.tachiyomi.util.system.getInstallerPackageName
import eu.kanade.tachiyomi.util.system.isInstalledFromFDroid
import uy.kohesive.injekt.injectLazy
import java.util.Date
import java.util.concurrent.TimeUnit
@@ -38,7 +38,7 @@ class AppUpdateChecker {
// Check if latest version is different from current version
if (isNewVersion(it.version)) {
if (context.getInstallerPackageName() == "org.fdroid.fdroid") {
if (context.isInstalledFromFDroid()) {
AppUpdateResult.NewUpdateFdroidInstallation
} else {
AppUpdateResult.NewUpdate(it)

View File

@@ -8,6 +8,7 @@ import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.category.CategoryController
import eu.kanade.tachiyomi.ui.download.DownloadController
import eu.kanade.tachiyomi.ui.setting.SettingsMainController
import eu.kanade.tachiyomi.util.system.isInstalledFromFDroid
class MoreController :
FullComposeController<MorePresenter>(),
@@ -19,6 +20,7 @@ class MoreController :
override fun ComposeContent() {
MoreScreen(
presenter = presenter,
isFDroid = activity?.isInstalledFromFDroid() ?: false,
onClickDownloadQueue = { router.pushController(DownloadController()) },
onClickCategories = { router.pushController(CategoryController()) },
onClickBackupAndRestore = { router.pushController(SettingsMainController.toBackupScreen()) },

View File

@@ -39,6 +39,7 @@ import androidx.core.net.toUri
import com.hippo.unifile.UniFile
import eu.kanade.domain.ui.UiPreferences
import eu.kanade.domain.ui.model.TabletUiMode
import eu.kanade.tachiyomi.BuildConfig
import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.ui.base.delegate.ThemingDelegate
import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences
@@ -393,8 +394,8 @@ fun Context.isPackageInstalled(packageName: String): Boolean {
}
}
fun Context.getInstallerPackageName(): String? {
return try {
fun Context.isInstalledFromFDroid(): Boolean {
val installerPackageName = try {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
packageManager.getInstallSourceInfo(packageName).installingPackageName
} else {
@@ -404,6 +405,10 @@ fun Context.getInstallerPackageName(): String? {
} catch (e: Exception) {
null
}
return installerPackageName == "org.fdroid.fdroid" ||
// F-Droid builds typically disable the updater
(!BuildConfig.INCLUDE_UPDATER && !isDevFlavor)
}
fun Context.getApplicationIcon(pkgName: String): Drawable? {