mirror of
https://github.com/topjohnwu/Magisk.git
synced 2025-03-28 18:42:15 +00:00
41 lines
1.3 KiB
Kotlin
41 lines
1.3 KiB
Kotlin
package com.topjohnwu.magisk.dialog
|
|
|
|
import com.topjohnwu.magisk.R
|
|
import com.topjohnwu.magisk.core.Info
|
|
import com.topjohnwu.magisk.core.di.AppContext
|
|
import com.topjohnwu.magisk.core.di.ServiceLocator
|
|
import com.topjohnwu.magisk.core.download.DownloadManager
|
|
import com.topjohnwu.magisk.core.download.Subject
|
|
import com.topjohnwu.magisk.view.MagiskDialog
|
|
import java.io.File
|
|
|
|
class ManagerInstallDialog : MarkDownDialog() {
|
|
|
|
private val svc get() = ServiceLocator.networkService
|
|
|
|
override suspend fun getMarkdownText(): String {
|
|
val text = svc.fetchString(Info.remote.magisk.note)
|
|
// Cache the changelog
|
|
AppContext.cacheDir.listFiles { _, name -> name.endsWith(".md") }.orEmpty().forEach {
|
|
it.delete()
|
|
}
|
|
File(AppContext.cacheDir, "${Info.remote.magisk.versionCode}.md").writeText(text)
|
|
return text
|
|
}
|
|
|
|
override fun build(dialog: MagiskDialog) {
|
|
super.build(dialog)
|
|
dialog.apply {
|
|
setCancelable(true)
|
|
setButton(MagiskDialog.ButtonType.POSITIVE) {
|
|
text = R.string.install
|
|
onClick { DownloadManager.startWithActivity(activity, Subject.App()) }
|
|
}
|
|
setButton(MagiskDialog.ButtonType.NEGATIVE) {
|
|
text = android.R.string.cancel
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|