mirror of
https://github.com/topjohnwu/Magisk.git
synced 2026-01-17 07:12:32 -08:00
Added showing download progress in the home ui
This commit is contained in:
@@ -1,10 +1,15 @@
|
||||
package com.topjohnwu.magisk.redesign.home
|
||||
|
||||
import android.graphics.Insets
|
||||
import androidx.lifecycle.Observer
|
||||
import com.topjohnwu.magisk.R
|
||||
import com.topjohnwu.magisk.databinding.FragmentHomeMd2Binding
|
||||
import com.topjohnwu.magisk.model.download.RemoteFileService
|
||||
import com.topjohnwu.magisk.model.entity.internal.DownloadSubject
|
||||
import com.topjohnwu.magisk.redesign.compat.CompatFragment
|
||||
import org.koin.androidx.viewmodel.ext.android.viewModel
|
||||
import timber.log.Timber
|
||||
import kotlin.math.roundToInt
|
||||
|
||||
class HomeFragment : CompatFragment<HomeViewModel, FragmentHomeMd2Binding>() {
|
||||
|
||||
@@ -15,8 +20,15 @@ class HomeFragment : CompatFragment<HomeViewModel, FragmentHomeMd2Binding>() {
|
||||
|
||||
override fun onStart() {
|
||||
super.onStart()
|
||||
|
||||
RemoteFileService.progressBroadcast.observe(this, Observer {
|
||||
when (it.second) {
|
||||
is DownloadSubject.Magisk.Download,
|
||||
is DownloadSubject.Magisk.Flash -> viewModel.stateMagiskProgress.value =
|
||||
it.first.times(100f).roundToInt().also { Timber.i("Progress: $it") }
|
||||
is DownloadSubject.Manager -> viewModel.stateManagerProgress.value =
|
||||
it.first.times(100f).roundToInt().also { Timber.i("Progress: $it") }
|
||||
}
|
||||
})
|
||||
activity.title = resources.getString(R.string.section_home)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -50,6 +50,9 @@ class HomeViewModel(
|
||||
val stateVersionUpdateMagisk = KObservableField("")
|
||||
val stateVersionUpdateManager = KObservableField("")
|
||||
|
||||
val stateMagiskProgress = KObservableField(0)
|
||||
val stateManagerProgress = KObservableField(0)
|
||||
|
||||
val stateHideManagerName = R.string.manager.res().let {
|
||||
if (!statePackageOriginal) {
|
||||
it.replaceRandomWithSpecial(3)
|
||||
|
||||
Reference in New Issue
Block a user