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() return@coroutineScope Result.failure()
} }
if (pendingUpdates.isNotEmpty()) { if (!pendingUpdates.isNullOrEmpty()) {
createUpdateNotification(pendingUpdates.map { it.name }) 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 // Limit checks to once a day at most
if (Date().time < preferences.lastExtCheck().get() + TimeUnit.DAYS.toMillis(1)) { if (Date().time < preferences.lastExtCheck().get() + TimeUnit.DAYS.toMillis(1)) {
return emptyList() return null
} }
val extensions = findExtensions() val extensions = findExtensions()

View File

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