|
@@ -5,6 +5,7 @@ import android.graphics.drawable.Drawable
|
|
import eu.kanade.domain.source.service.SourcePreferences
|
|
import eu.kanade.domain.source.service.SourcePreferences
|
|
import eu.kanade.tachiyomi.R
|
|
import eu.kanade.tachiyomi.R
|
|
import eu.kanade.tachiyomi.extension.api.ExtensionGithubApi
|
|
import eu.kanade.tachiyomi.extension.api.ExtensionGithubApi
|
|
|
|
+import eu.kanade.tachiyomi.extension.api.ExtensionUpdateNotifier
|
|
import eu.kanade.tachiyomi.extension.model.Extension
|
|
import eu.kanade.tachiyomi.extension.model.Extension
|
|
import eu.kanade.tachiyomi.extension.model.InstallStep
|
|
import eu.kanade.tachiyomi.extension.model.InstallStep
|
|
import eu.kanade.tachiyomi.extension.model.LoadResult
|
|
import eu.kanade.tachiyomi.extension.model.LoadResult
|
|
@@ -195,7 +196,7 @@ class ExtensionManager(
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
- * Returns an observable of the installation process for the given extension. It will complete
|
|
|
|
|
|
+ * Returns a flow of the installation process for the given extension. It will complete
|
|
* once the extension is installed or throws an error. The process will be canceled if
|
|
* once the extension is installed or throws an error. The process will be canceled if
|
|
* unsubscribed before its completion.
|
|
* unsubscribed before its completion.
|
|
*
|
|
*
|
|
@@ -206,7 +207,7 @@ class ExtensionManager(
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
- * Returns an observable of the installation process for the given extension. It will complete
|
|
|
|
|
|
+ * Returns a flow of the installation process for the given extension. It will complete
|
|
* once the extension is updated or throws an error. The process will be canceled if
|
|
* once the extension is updated or throws an error. The process will be canceled if
|
|
* unsubscribed before its completion.
|
|
* unsubscribed before its completion.
|
|
*
|
|
*
|
|
@@ -356,6 +357,10 @@ class ExtensionManager(
|
|
}
|
|
}
|
|
|
|
|
|
private fun updatePendingUpdatesCount() {
|
|
private fun updatePendingUpdatesCount() {
|
|
- preferences.extensionUpdatesCount().set(_installedExtensionsFlow.value.count { it.hasUpdate })
|
|
|
|
|
|
+ val pendingUpdateCount = _installedExtensionsFlow.value.count { it.hasUpdate }
|
|
|
|
+ preferences.extensionUpdatesCount().set(pendingUpdateCount)
|
|
|
|
+ if (pendingUpdateCount == 0) {
|
|
|
|
+ ExtensionUpdateNotifier(context).dismiss()
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|