Fix extension update badge reset when app resumed (#6822)

(cherry picked from commit ef600c09562f86b6f9c930d19c15c875b2f72751)
This commit is contained in:
Ivan Iskandar 2022-03-25 22:11:16 +07:00 committed by Jobobby04
parent d8179f992e
commit eb533c4498
3 changed files with 6 additions and 5 deletions

View File

@ -34,7 +34,7 @@ class ExtensionUpdateJob(private val context: Context, workerParams: WorkerParam
return@coroutineScope Result.failure()
}
if (pendingUpdates.isNotEmpty()) {
if (!pendingUpdates.isNullOrEmpty()) {
createUpdateNotification(pendingUpdates.map { it.name })
}

View File

@ -50,10 +50,10 @@ internal class ExtensionGithubApi {
}
}
suspend fun checkForUpdates(context: Context): List<Extension.Installed> {
suspend fun checkForUpdates(context: Context): List<Extension.Installed>? {
// Limit checks to once a day at most
if (Date().time < preferences.lastExtCheck().get() + TimeUnit.DAYS.toMillis(1)) {
return emptyList()
return null
}
val extensions = findExtensions()

View File

@ -415,8 +415,9 @@ class MainActivity : BaseViewBindingActivity<MainActivityBinding>() {
// Extension updates
try {
val pendingUpdates = ExtensionGithubApi().checkForUpdates(this@MainActivity)
preferences.extensionUpdatesCount().set(pendingUpdates.size)
ExtensionGithubApi().checkForUpdates(this@MainActivity)?.let { pendingUpdates ->
preferences.extensionUpdatesCount().set(pendingUpdates.size)
}
} catch (e: Exception) {
logcat(LogPriority.ERROR, e)
}