Added processing of the download states

This commit is contained in:
Viktor De Pasquale
2019-11-11 18:01:23 +01:00
parent 027a5695f2
commit 82120cf47f
3 changed files with 40 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
package com.topjohnwu.magisk.model.events.dialog
import com.topjohnwu.magisk.R
import com.topjohnwu.magisk.model.download.DownloadService
import com.topjohnwu.magisk.model.entity.internal.Configuration
import com.topjohnwu.magisk.model.entity.internal.DownloadSubject
import com.topjohnwu.magisk.model.entity.module.Repo
import com.topjohnwu.magisk.view.MagiskDialog
class ModuleInstallDialog(private val item: Repo) : DialogEvent() {
override fun build(dialog: MagiskDialog) {
with(dialog) {
fun download(install: Boolean) = DownloadService(context) {
val config = if (install) Configuration.Flash.Primary else Configuration.Download
subject = DownloadSubject.Module(item, config)
}
applyTitle(context.getString(R.string.repo_install_title, item.name))
.applyMessage(context.getString(R.string.repo_install_msg, item.downloadFilename))
.cancellable(true)
.applyButton(MagiskDialog.ButtonType.POSITIVE) {
titleRes = R.string.install
onClick { download(true) }
}
.applyButton(MagiskDialog.ButtonType.NEGATIVE) {
titleRes = R.string.download
onClick { download(false) }
}
.reveal()
}
}
}

View File

@@ -195,6 +195,10 @@ class ModuleViewModel(
.subscribeK()
}
fun download(item: RepoItem) {
ModuleInstallDialog(item.item).publish()
}
// ---
private fun cleanup() = Completable