mirror of
https://github.com/null2264/yokai.git
synced 2025-06-21 10:44:42 +00:00
Rename app updating classes
"So I stop confusing it for updaters of other things." - arkon agreed Co-Authored-By: arkon <4098258+arkon@users.noreply.github.com>
This commit is contained in:
parent
aa2d794b47
commit
895395944b
18 changed files with 100 additions and 100 deletions
|
@ -213,7 +213,7 @@
|
|||
android:exported="false" />
|
||||
|
||||
<receiver
|
||||
android:name=".data.updater.UpdaterBroadcast"
|
||||
android:name=".data.updater.AppUpdateBroadcast"
|
||||
android:exported="false">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
|
||||
|
@ -233,7 +233,7 @@
|
|||
android:exported="false" />
|
||||
|
||||
<service
|
||||
android:name=".data.updater.UpdaterService"
|
||||
android:name=".data.updater.AppUpdateService"
|
||||
android:exported="false" />
|
||||
|
||||
<service
|
||||
|
|
|
@ -9,8 +9,8 @@ import eu.kanade.tachiyomi.data.preference.PreferenceKeys
|
|||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.data.preference.plusAssign
|
||||
import eu.kanade.tachiyomi.data.track.TrackManager
|
||||
import eu.kanade.tachiyomi.data.updater.UpdaterJob
|
||||
import eu.kanade.tachiyomi.data.updater.UpdaterService
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateJob
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateService
|
||||
import eu.kanade.tachiyomi.extension.ExtensionUpdateJob
|
||||
import eu.kanade.tachiyomi.network.PREF_DOH_CLOUDFLARE
|
||||
import eu.kanade.tachiyomi.ui.library.LibraryPresenter
|
||||
|
@ -32,7 +32,7 @@ object Migrations {
|
|||
val context = preferences.context
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
prefs.edit {
|
||||
remove(UpdaterService.NOTIFY_ON_INSTALL_KEY)
|
||||
remove(AppUpdateService.NOTIFY_ON_INSTALL_KEY)
|
||||
}
|
||||
val oldVersion = preferences.lastVersionCode().get()
|
||||
if (oldVersion < BuildConfig.VERSION_CODE) {
|
||||
|
@ -40,7 +40,7 @@ object Migrations {
|
|||
|
||||
// Always set up background tasks to ensure they're running
|
||||
if (BuildConfig.INCLUDE_UPDATER) {
|
||||
UpdaterJob.setupTask(context)
|
||||
AppUpdateJob.setupTask(context)
|
||||
}
|
||||
ExtensionUpdateJob.setupTask(context)
|
||||
LibraryUpdateJob.setupTask(context)
|
||||
|
@ -53,7 +53,7 @@ object Migrations {
|
|||
if (oldVersion < 14) {
|
||||
// Restore jobs after upgrading to evernote's job scheduler.
|
||||
if (BuildConfig.INCLUDE_UPDATER) {
|
||||
UpdaterJob.setupTask(context)
|
||||
AppUpdateJob.setupTask(context)
|
||||
}
|
||||
LibraryUpdateJob.setupTask(context)
|
||||
}
|
||||
|
@ -90,7 +90,7 @@ object Migrations {
|
|||
LibraryPresenter.updateDB()
|
||||
// Restore jobs after migrating from Evernote's job scheduler to WorkManager.
|
||||
if (BuildConfig.INCLUDE_UPDATER) {
|
||||
UpdaterJob.setupTask(context)
|
||||
AppUpdateJob.setupTask(context)
|
||||
}
|
||||
LibraryUpdateJob.setupTask(context)
|
||||
BackupCreatorJob.setupTask(context)
|
||||
|
@ -130,7 +130,7 @@ object Migrations {
|
|||
if (oldVersion < 74) {
|
||||
// Turn on auto updates for all users
|
||||
if (BuildConfig.INCLUDE_UPDATER) {
|
||||
UpdaterJob.setupTask(context)
|
||||
AppUpdateJob.setupTask(context)
|
||||
}
|
||||
}
|
||||
if (oldVersion < 75) {
|
||||
|
|
|
@ -16,7 +16,7 @@ import eu.kanade.tachiyomi.data.download.DownloadManager
|
|||
import eu.kanade.tachiyomi.data.download.DownloadService
|
||||
import eu.kanade.tachiyomi.data.library.LibraryUpdateService
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.data.updater.UpdaterService
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateService
|
||||
import eu.kanade.tachiyomi.extension.ExtensionInstallService
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
import eu.kanade.tachiyomi.ui.main.MainActivity
|
||||
|
@ -216,7 +216,7 @@ class NotificationReceiver : BroadcastReceiver() {
|
|||
}
|
||||
|
||||
private fun cancelDownloadUpdate(context: Context) {
|
||||
UpdaterService.stop(context)
|
||||
AppUpdateService.stop(context)
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
|
|
@ -418,7 +418,7 @@ class PreferencesHelper(val context: Context) {
|
|||
|
||||
fun sideNavMode() = flowPrefs.getInt(Keys.sideNavMode, 0)
|
||||
|
||||
fun shouldAutoUpdate() = prefs.getInt(Keys.shouldAutoUpdate, AutoUpdaterJob.ONLY_ON_UNMETERED)
|
||||
fun appShouldAutoUpdate() = prefs.getInt(Keys.shouldAutoUpdate, AutoUpdaterJob.ONLY_ON_UNMETERED)
|
||||
|
||||
fun autoUpdateExtensions() = prefs.getInt(Keys.autoUpdateExtensions, AutoUpdaterJob.ONLY_ON_UNMETERED)
|
||||
|
||||
|
|
|
@ -10,9 +10,9 @@ import androidx.preference.PreferenceManager
|
|||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.util.system.toast
|
||||
|
||||
class UpdaterBroadcast : BroadcastReceiver() {
|
||||
class AppUpdateBroadcast : BroadcastReceiver() {
|
||||
override fun onReceive(context: Context, intent: Intent) {
|
||||
if (UpdaterService.PACKAGE_INSTALLED_ACTION == intent.action) {
|
||||
if (AppUpdateService.PACKAGE_INSTALLED_ACTION == intent.action) {
|
||||
val extras = intent.extras ?: return
|
||||
when (val status = extras.getInt(PackageInstaller.EXTRA_STATUS)) {
|
||||
PackageInstaller.STATUS_PENDING_USER_ACTION -> {
|
||||
|
@ -22,33 +22,33 @@ class UpdaterBroadcast : BroadcastReceiver() {
|
|||
PackageInstaller.STATUS_SUCCESS -> {
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
prefs.edit {
|
||||
remove(UpdaterService.NOTIFY_ON_INSTALL_KEY)
|
||||
remove(AppUpdateService.NOTIFY_ON_INSTALL_KEY)
|
||||
}
|
||||
val notifyOnInstall = extras.getBoolean(UpdaterService.EXTRA_NOTIFY_ON_INSTALL, false)
|
||||
val notifyOnInstall = extras.getBoolean(AppUpdateService.EXTRA_NOTIFY_ON_INSTALL, false)
|
||||
try {
|
||||
if (notifyOnInstall) {
|
||||
UpdaterNotifier(context).onInstallFinished()
|
||||
AppUpdateNotifier(context).onInstallFinished()
|
||||
}
|
||||
} finally {
|
||||
UpdaterService.stop(context)
|
||||
AppUpdateService.stop(context)
|
||||
}
|
||||
}
|
||||
PackageInstaller.STATUS_FAILURE, PackageInstaller.STATUS_FAILURE_ABORTED, PackageInstaller.STATUS_FAILURE_BLOCKED, PackageInstaller.STATUS_FAILURE_CONFLICT, PackageInstaller.STATUS_FAILURE_INCOMPATIBLE, PackageInstaller.STATUS_FAILURE_INVALID, PackageInstaller.STATUS_FAILURE_STORAGE -> {
|
||||
if (status != PackageInstaller.STATUS_FAILURE_ABORTED) {
|
||||
context.toast(R.string.could_not_install_update)
|
||||
val uri = intent.getStringExtra(UpdaterService.EXTRA_FILE_URI) ?: return
|
||||
UpdaterNotifier(context).onInstallError(uri.toUri())
|
||||
val uri = intent.getStringExtra(AppUpdateService.EXTRA_FILE_URI) ?: return
|
||||
AppUpdateNotifier(context).onInstallError(uri.toUri())
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (intent.action == Intent.ACTION_MY_PACKAGE_REPLACED) {
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
val notifyOnInstall = prefs.getBoolean(UpdaterService.NOTIFY_ON_INSTALL_KEY, false)
|
||||
val notifyOnInstall = prefs.getBoolean(AppUpdateService.NOTIFY_ON_INSTALL_KEY, false)
|
||||
prefs.edit {
|
||||
remove(UpdaterService.NOTIFY_ON_INSTALL_KEY)
|
||||
remove(AppUpdateService.NOTIFY_ON_INSTALL_KEY)
|
||||
}
|
||||
if (notifyOnInstall) {
|
||||
UpdaterNotifier(context).onInstallFinished()
|
||||
AppUpdateNotifier(context).onInstallFinished()
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
package eu.kanade.tachiyomi.data.updater
|
||||
|
||||
import eu.kanade.tachiyomi.data.updater.github.GithubAppUpdateChecker
|
||||
|
||||
abstract class AppUpdateChecker {
|
||||
|
||||
companion object {
|
||||
fun getUpdateChecker(): AppUpdateChecker = GithubAppUpdateChecker()
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns suspended result containing release information
|
||||
*/
|
||||
abstract suspend fun checkForUpdate(): AppUpdateResult
|
||||
}
|
|
@ -17,20 +17,20 @@ import kotlinx.coroutines.coroutineScope
|
|||
import uy.kohesive.injekt.injectLazy
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
class UpdaterJob(private val context: Context, workerParams: WorkerParameters) :
|
||||
class AppUpdateJob(private val context: Context, workerParams: WorkerParameters) :
|
||||
CoroutineWorker(context, workerParams) {
|
||||
|
||||
override suspend fun doWork(): Result = coroutineScope {
|
||||
try {
|
||||
val preferences: PreferencesHelper by injectLazy()
|
||||
val result = UpdateChecker.getUpdateChecker().checkForUpdate()
|
||||
if (result is UpdateResult.NewUpdate<*>) {
|
||||
val result = AppUpdateChecker.getUpdateChecker().checkForUpdate()
|
||||
if (result is AppUpdateResult.NewUpdate<*>) {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S &&
|
||||
preferences.shouldAutoUpdate() != AutoUpdaterJob.NEVER
|
||||
preferences.appShouldAutoUpdate() != AutoUpdaterJob.NEVER
|
||||
) {
|
||||
AutoUpdaterJob.setupTask(context)
|
||||
}
|
||||
UpdaterNotifier(context).promptUpdate(
|
||||
AppUpdateNotifier(context).promptUpdate(
|
||||
result.release.info,
|
||||
result.release.downloadLink,
|
||||
result.release.releaseLink
|
||||
|
@ -55,7 +55,7 @@ class UpdaterJob(private val context: Context, workerParams: WorkerParameters) :
|
|||
.setRequiredNetworkType(NetworkType.CONNECTED)
|
||||
.build()
|
||||
|
||||
val request = PeriodicWorkRequestBuilder<UpdaterJob>(
|
||||
val request = PeriodicWorkRequestBuilder<AppUpdateJob>(
|
||||
2,
|
||||
TimeUnit.DAYS,
|
||||
3,
|
|
@ -21,7 +21,7 @@ import eu.kanade.tachiyomi.util.system.notificationManager
|
|||
*
|
||||
* @param context context of application.
|
||||
*/
|
||||
internal class UpdaterNotifier(private val context: Context) {
|
||||
internal class AppUpdateNotifier(private val context: Context) {
|
||||
|
||||
/**
|
||||
* Builder to manage notifications.
|
||||
|
@ -44,9 +44,9 @@ internal class UpdaterNotifier(private val context: Context) {
|
|||
}
|
||||
|
||||
fun promptUpdate(body: String, url: String, releaseUrl: String) {
|
||||
val intent = Intent(context, UpdaterService::class.java).apply {
|
||||
putExtra(UpdaterService.EXTRA_DOWNLOAD_URL, url)
|
||||
putExtra(UpdaterService.EXTRA_NOTIFY_ON_INSTALL, true)
|
||||
val intent = Intent(context, AppUpdateService::class.java).apply {
|
||||
putExtra(AppUpdateService.EXTRA_DOWNLOAD_URL, url)
|
||||
putExtra(AppUpdateService.EXTRA_NOTIFY_ON_INSTALL, true)
|
||||
}
|
||||
|
||||
val pendingIntent = NotificationReceiver.openUpdatePendingActivity(context, body, url)
|
||||
|
@ -202,7 +202,7 @@ internal class UpdaterNotifier(private val context: Context) {
|
|||
addAction(
|
||||
R.drawable.ic_refresh_24dp,
|
||||
context.getString(R.string.retry),
|
||||
UpdaterService.downloadApkPendingService(context, url)
|
||||
AppUpdateService.downloadApkPendingService(context, url)
|
||||
)
|
||||
// Cancel action
|
||||
addAction(
|
|
@ -0,0 +1,7 @@
|
|||
package eu.kanade.tachiyomi.data.updater
|
||||
|
||||
abstract class AppUpdateResult {
|
||||
|
||||
open class NewUpdate<T : Release>(val release: T) : AppUpdateResult()
|
||||
open class NoNewUpdate : AppUpdateResult()
|
||||
}
|
|
@ -35,7 +35,7 @@ import timber.log.Timber
|
|||
import uy.kohesive.injekt.injectLazy
|
||||
import java.io.File
|
||||
|
||||
class UpdaterService : Service() {
|
||||
class AppUpdateService : Service() {
|
||||
|
||||
private val network: NetworkHelper by injectLazy()
|
||||
|
||||
|
@ -44,7 +44,7 @@ class UpdaterService : Service() {
|
|||
*/
|
||||
private lateinit var wakeLock: PowerManager.WakeLock
|
||||
|
||||
private lateinit var notifier: UpdaterNotifier
|
||||
private lateinit var notifier: AppUpdateNotifier
|
||||
|
||||
private var runningJob: Job? = null
|
||||
|
||||
|
@ -52,7 +52,7 @@ class UpdaterService : Service() {
|
|||
|
||||
override fun onCreate() {
|
||||
super.onCreate()
|
||||
notifier = UpdaterNotifier(this)
|
||||
notifier = AppUpdateNotifier(this)
|
||||
|
||||
startForeground(Notifications.ID_UPDATER, notifier.onDownloadStarted(getString(R.string.app_name)).build())
|
||||
|
||||
|
@ -189,7 +189,7 @@ class UpdaterService : Service() {
|
|||
}
|
||||
}
|
||||
|
||||
val newIntent = Intent(this, UpdaterBroadcast::class.java)
|
||||
val newIntent = Intent(this, AppUpdateBroadcast::class.java)
|
||||
.setAction(PACKAGE_INSTALLED_ACTION)
|
||||
.putExtra(EXTRA_NOTIFY_ON_INSTALL, notifyOnInstall)
|
||||
.putExtra(EXTRA_FILE_URI, file.getUriCompat(this).toString())
|
||||
|
@ -216,7 +216,7 @@ class UpdaterService : Service() {
|
|||
|
||||
internal const val NOTIFY_ON_INSTALL_KEY = "notify_on_install_complete"
|
||||
|
||||
private var instance: UpdaterService? = null
|
||||
private var instance: AppUpdateService? = null
|
||||
|
||||
/**
|
||||
* Returns the status of the service.
|
||||
|
@ -234,7 +234,7 @@ class UpdaterService : Service() {
|
|||
fun start(context: Context, url: String, notifyOnInstall: Boolean) {
|
||||
if (!isRunning()) {
|
||||
val title = context.getString(R.string.app_name)
|
||||
val intent = Intent(context, UpdaterService::class.java).apply {
|
||||
val intent = Intent(context, AppUpdateService::class.java).apply {
|
||||
putExtra(EXTRA_DOWNLOAD_TITLE, title)
|
||||
putExtra(EXTRA_DOWNLOAD_URL, url)
|
||||
putExtra(EXTRA_NOTIFY_ON_INSTALL, notifyOnInstall)
|
||||
|
@ -253,7 +253,7 @@ class UpdaterService : Service() {
|
|||
* @param context the application context.
|
||||
*/
|
||||
fun stop(context: Context) {
|
||||
context.stopService(Intent(context, UpdaterService::class.java))
|
||||
context.stopService(Intent(context, AppUpdateService::class.java))
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -263,7 +263,7 @@ class UpdaterService : Service() {
|
|||
* @return [PendingIntent]
|
||||
*/
|
||||
internal fun downloadApkPendingService(context: Context, url: String, notifyOnInstall: Boolean = false): PendingIntent {
|
||||
val intent = Intent(context, UpdaterService::class.java).apply {
|
||||
val intent = Intent(context, AppUpdateService::class.java).apply {
|
||||
putExtra(EXTRA_DOWNLOAD_URL, url)
|
||||
putExtra(EXTRA_NOTIFY_ON_INSTALL, notifyOnInstall)
|
||||
}
|
|
@ -25,11 +25,11 @@ class AutoUpdaterJob(private val context: Context, workerParams: WorkerParameter
|
|||
) {
|
||||
return@coroutineScope Result.failure()
|
||||
}
|
||||
val result = UpdateChecker.getUpdateChecker().checkForUpdate()
|
||||
if (result is UpdateResult.NewUpdate<*> && !UpdaterService.isRunning()) {
|
||||
UpdaterNotifier(context).cancel()
|
||||
UpdaterNotifier.releasePageUrl = result.release.releaseLink
|
||||
UpdaterService.start(context, result.release.downloadLink, false)
|
||||
val result = AppUpdateChecker.getUpdateChecker().checkForUpdate()
|
||||
if (result is AppUpdateResult.NewUpdate<*> && !AppUpdateService.isRunning()) {
|
||||
AppUpdateNotifier(context).cancel()
|
||||
AppUpdateNotifier.releasePageUrl = result.release.releaseLink
|
||||
AppUpdateService.start(context, result.release.downloadLink, false)
|
||||
}
|
||||
Result.success()
|
||||
} catch (e: Exception) {
|
||||
|
@ -45,7 +45,7 @@ class AutoUpdaterJob(private val context: Context, workerParams: WorkerParameter
|
|||
|
||||
fun setupTask(context: Context) {
|
||||
val preferences = Injekt.get<PreferencesHelper>()
|
||||
val restrictions = preferences.shouldAutoUpdate()
|
||||
val restrictions = preferences.appShouldAutoUpdate()
|
||||
val wifiRestriction = if (restrictions == ONLY_ON_UNMETERED) {
|
||||
NetworkType.UNMETERED
|
||||
} else {
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
package eu.kanade.tachiyomi.data.updater
|
||||
|
||||
import eu.kanade.tachiyomi.data.updater.github.GithubUpdateChecker
|
||||
|
||||
abstract class UpdateChecker {
|
||||
|
||||
companion object {
|
||||
fun getUpdateChecker(): UpdateChecker = GithubUpdateChecker()
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns suspended result containing release information
|
||||
*/
|
||||
abstract suspend fun checkForUpdate(): UpdateResult
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
package eu.kanade.tachiyomi.data.updater
|
||||
|
||||
abstract class UpdateResult {
|
||||
|
||||
open class NewUpdate<T : Release>(val release: T) : UpdateResult()
|
||||
open class NoNewUpdate : UpdateResult()
|
||||
}
|
|
@ -1,22 +1,22 @@
|
|||
package eu.kanade.tachiyomi.data.updater.github
|
||||
|
||||
import eu.kanade.tachiyomi.BuildConfig
|
||||
import eu.kanade.tachiyomi.data.updater.UpdateChecker
|
||||
import eu.kanade.tachiyomi.data.updater.UpdateResult
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateChecker
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateResult
|
||||
|
||||
class GithubUpdateChecker : UpdateChecker() {
|
||||
class GithubAppUpdateChecker : AppUpdateChecker() {
|
||||
|
||||
private val service: GithubService = GithubService.create()
|
||||
|
||||
override suspend fun checkForUpdate(): UpdateResult {
|
||||
override suspend fun checkForUpdate(): AppUpdateResult {
|
||||
val release = service.getLatestVersion()
|
||||
val newVersion = release.version.replace("[^\\d.]".toRegex(), "")
|
||||
|
||||
// Check if latest version is different from current version
|
||||
return if (newVersion != BuildConfig.VERSION_NAME) {
|
||||
GithubUpdateResult.NewUpdate(release)
|
||||
GithubAppUpdateResult.NewUpdate(release)
|
||||
} else {
|
||||
GithubUpdateResult.NoNewUpdate()
|
||||
GithubAppUpdateResult.NoNewUpdate()
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
package eu.kanade.tachiyomi.data.updater.github
|
||||
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateResult
|
||||
|
||||
sealed class GithubAppUpdateResult : AppUpdateResult() {
|
||||
|
||||
class NewUpdate(release: GithubRelease) : AppUpdateResult.NewUpdate<GithubRelease>(release)
|
||||
class NoNewUpdate : AppUpdateResult.NoNewUpdate()
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
package eu.kanade.tachiyomi.data.updater.github
|
||||
|
||||
import eu.kanade.tachiyomi.data.updater.UpdateResult
|
||||
|
||||
sealed class GithubUpdateResult : UpdateResult() {
|
||||
|
||||
class NewUpdate(release: GithubRelease) : UpdateResult.NewUpdate<GithubRelease>(release)
|
||||
class NoNewUpdate : UpdateResult.NoNewUpdate()
|
||||
}
|
|
@ -52,9 +52,9 @@ import eu.kanade.tachiyomi.data.library.LibraryUpdateService
|
|||
import eu.kanade.tachiyomi.data.notification.NotificationReceiver
|
||||
import eu.kanade.tachiyomi.data.notification.Notifications
|
||||
import eu.kanade.tachiyomi.data.preference.asImmediateFlowIn
|
||||
import eu.kanade.tachiyomi.data.updater.UpdateChecker
|
||||
import eu.kanade.tachiyomi.data.updater.UpdateResult
|
||||
import eu.kanade.tachiyomi.data.updater.UpdaterNotifier
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateChecker
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateNotifier
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateResult
|
||||
import eu.kanade.tachiyomi.databinding.MainActivityBinding
|
||||
import eu.kanade.tachiyomi.extension.ExtensionManager
|
||||
import eu.kanade.tachiyomi.extension.api.ExtensionGithubApi
|
||||
|
@ -122,7 +122,7 @@ open class MainActivity : BaseActivity<MainActivityBinding>(), DownloadServiceLi
|
|||
private val hideBottomNav
|
||||
get() = router.backstackSize > 1 && router.backstack[1].controller !is DialogController
|
||||
|
||||
private val updateChecker by lazy { UpdateChecker.getUpdateChecker() }
|
||||
private val updateChecker by lazy { AppUpdateChecker.getUpdateChecker() }
|
||||
private val isUpdaterEnabled = BuildConfig.INCLUDE_UPDATER
|
||||
private var tabAnimation: ValueAnimator? = null
|
||||
private var overflowDialog: Dialog? = null
|
||||
|
@ -565,13 +565,13 @@ open class MainActivity : BaseActivity<MainActivityBinding>(), DownloadServiceLi
|
|||
try {
|
||||
val result = updateChecker.checkForUpdate()
|
||||
preferences.lastAppCheck().set(Date().time)
|
||||
if (result is UpdateResult.NewUpdate<*>) {
|
||||
if (result is AppUpdateResult.NewUpdate<*>) {
|
||||
val body = result.release.info
|
||||
val url = result.release.downloadLink
|
||||
|
||||
// Create confirmation window
|
||||
withContext(Dispatchers.Main) {
|
||||
UpdaterNotifier.releasePageUrl = result.release.releaseLink
|
||||
AppUpdateNotifier.releasePageUrl = result.release.releaseLink
|
||||
AboutController.NewUpdateDialogController(body, url).showDialog(router)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,10 +10,10 @@ import com.google.android.gms.oss.licenses.OssLicensesMenuActivity
|
|||
import eu.kanade.tachiyomi.BuildConfig
|
||||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.data.updater.UpdateChecker
|
||||
import eu.kanade.tachiyomi.data.updater.UpdateResult
|
||||
import eu.kanade.tachiyomi.data.updater.UpdaterNotifier
|
||||
import eu.kanade.tachiyomi.data.updater.UpdaterService
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateChecker
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateNotifier
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateResult
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateService
|
||||
import eu.kanade.tachiyomi.ui.base.controller.DialogController
|
||||
import eu.kanade.tachiyomi.util.lang.toTimestampString
|
||||
import eu.kanade.tachiyomi.util.system.isOnline
|
||||
|
@ -36,7 +36,7 @@ class AboutController : SettingsController() {
|
|||
/**
|
||||
* Checks for new releases
|
||||
*/
|
||||
private val updateChecker by lazy { UpdateChecker.getUpdateChecker() }
|
||||
private val updateChecker by lazy { AppUpdateChecker.getUpdateChecker() }
|
||||
|
||||
private val userPreferences: PreferencesHelper by injectLazy()
|
||||
|
||||
|
@ -178,17 +178,17 @@ class AboutController : SettingsController() {
|
|||
}
|
||||
}
|
||||
when (result) {
|
||||
is UpdateResult.NewUpdate<*> -> {
|
||||
is AppUpdateResult.NewUpdate<*> -> {
|
||||
val body = result.release.info
|
||||
val url = result.release.downloadLink
|
||||
|
||||
// Create confirmation window
|
||||
withContext(Dispatchers.Main) {
|
||||
UpdaterNotifier.releasePageUrl = result.release.releaseLink
|
||||
AppUpdateNotifier.releasePageUrl = result.release.releaseLink
|
||||
NewUpdateDialogController(body, url).showDialog(router)
|
||||
}
|
||||
}
|
||||
is UpdateResult.NoNewUpdate -> {
|
||||
is AppUpdateResult.NoNewUpdate -> {
|
||||
withContext(Dispatchers.Main) {
|
||||
activity?.toast(R.string.no_new_updates_available)
|
||||
}
|
||||
|
@ -216,7 +216,7 @@ class AboutController : SettingsController() {
|
|||
if (appContext != null) {
|
||||
// Start download
|
||||
val url = args.getString(URL_KEY) ?: ""
|
||||
UpdaterService.start(appContext, url, true)
|
||||
AppUpdateService.start(appContext, url, true)
|
||||
}
|
||||
}
|
||||
.setNegativeButton(R.string.ignore, null)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue