mirror of
https://github.com/topjohnwu/Magisk.git
synced 2025-04-23 02:01:33 +00:00
Rename base class names
This commit is contained in:
parent
08b528dc4f
commit
6b317f918e
@ -18,7 +18,7 @@ import com.karumi.dexter.listener.PermissionRequest
|
|||||||
import com.karumi.dexter.listener.multi.MultiplePermissionsListener
|
import com.karumi.dexter.listener.multi.MultiplePermissionsListener
|
||||||
import com.topjohnwu.magisk.BR
|
import com.topjohnwu.magisk.BR
|
||||||
import com.topjohnwu.magisk.Config
|
import com.topjohnwu.magisk.Config
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.extensions.set
|
import com.topjohnwu.magisk.extensions.set
|
||||||
import com.topjohnwu.magisk.model.events.EventHandler
|
import com.topjohnwu.magisk.model.events.EventHandler
|
||||||
import com.topjohnwu.magisk.model.permissions.PermissionRequestBuilder
|
import com.topjohnwu.magisk.model.permissions.PermissionRequestBuilder
|
||||||
@ -26,9 +26,9 @@ import com.topjohnwu.magisk.utils.LocaleManager
|
|||||||
import com.topjohnwu.magisk.utils.Utils
|
import com.topjohnwu.magisk.utils.Utils
|
||||||
import com.topjohnwu.magisk.utils.currentLocale
|
import com.topjohnwu.magisk.utils.currentLocale
|
||||||
|
|
||||||
typealias RequestCallback = MagiskActivity<*, *>.(Int, Intent?) -> Unit
|
typealias RequestCallback = BaseActivity<*, *>.(Int, Intent?) -> Unit
|
||||||
|
|
||||||
abstract class MagiskActivity<ViewModel : MagiskViewModel, Binding : ViewDataBinding> :
|
abstract class BaseActivity<ViewModel : BaseViewModel, Binding : ViewDataBinding> :
|
||||||
AppCompatActivity(), EventHandler {
|
AppCompatActivity(), EventHandler {
|
||||||
|
|
||||||
protected lateinit var binding: Binding
|
protected lateinit var binding: Binding
|
||||||
@ -66,7 +66,7 @@ abstract class MagiskActivity<ViewModel : MagiskViewModel, Binding : ViewDataBin
|
|||||||
|
|
||||||
binding = DataBindingUtil.setContentView<Binding>(this, layoutRes).apply {
|
binding = DataBindingUtil.setContentView<Binding>(this, layoutRes).apply {
|
||||||
setVariable(BR.viewModel, viewModel)
|
setVariable(BR.viewModel, viewModel)
|
||||||
lifecycleOwner = this@MagiskActivity
|
lifecycleOwner = this@BaseActivity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -100,7 +100,7 @@ abstract class MagiskActivity<ViewModel : MagiskViewModel, Binding : ViewDataBin
|
|||||||
super.onActivityResult(requestCode, resultCode, data)
|
super.onActivityResult(requestCode, resultCode, data)
|
||||||
resultCallbacks[requestCode]?.apply {
|
resultCallbacks[requestCode]?.apply {
|
||||||
resultCallbacks.remove(requestCode)
|
resultCallbacks.remove(requestCode)
|
||||||
invoke(this@MagiskActivity, resultCode, data)
|
invoke(this@BaseActivity, resultCode, data)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -9,15 +9,14 @@ import androidx.databinding.DataBindingUtil
|
|||||||
import androidx.databinding.ViewDataBinding
|
import androidx.databinding.ViewDataBinding
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import com.topjohnwu.magisk.BR
|
import com.topjohnwu.magisk.BR
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.model.events.EventHandler
|
import com.topjohnwu.magisk.model.events.EventHandler
|
||||||
import com.topjohnwu.magisk.model.events.ViewEvent
|
import com.topjohnwu.magisk.model.events.ViewEvent
|
||||||
import com.topjohnwu.magisk.ui.MainActivity
|
|
||||||
|
|
||||||
abstract class MagiskFragment<ViewModel : MagiskViewModel, Binding : ViewDataBinding> :
|
abstract class BaseFragment<ViewModel : BaseViewModel, Binding : ViewDataBinding> :
|
||||||
Fragment(), EventHandler {
|
Fragment(), EventHandler {
|
||||||
|
|
||||||
protected val activity get() = requireActivity() as MainActivity
|
protected val activity get() = requireActivity() as BaseActivity<*, *>
|
||||||
protected lateinit var binding: Binding
|
protected lateinit var binding: Binding
|
||||||
protected abstract val layoutRes: Int
|
protected abstract val layoutRes: Int
|
||||||
protected abstract val viewModel: ViewModel
|
protected abstract val viewModel: ViewModel
|
||||||
@ -34,7 +33,7 @@ abstract class MagiskFragment<ViewModel : MagiskViewModel, Binding : ViewDataBin
|
|||||||
): View? {
|
): View? {
|
||||||
binding = DataBindingUtil.inflate<Binding>(inflater, layoutRes, container, false).apply {
|
binding = DataBindingUtil.inflate<Binding>(inflater, layoutRes, container, false).apply {
|
||||||
setVariable(BR.viewModel, viewModel)
|
setVariable(BR.viewModel, viewModel)
|
||||||
lifecycleOwner = this@MagiskFragment
|
lifecycleOwner = this@BaseFragment
|
||||||
}
|
}
|
||||||
|
|
||||||
return binding.root
|
return binding.root
|
@ -14,7 +14,7 @@ abstract class BasePreferenceFragment : PreferenceFragmentCompat(),
|
|||||||
SharedPreferences.OnSharedPreferenceChangeListener {
|
SharedPreferences.OnSharedPreferenceChangeListener {
|
||||||
|
|
||||||
protected val prefs: SharedPreferences by inject()
|
protected val prefs: SharedPreferences by inject()
|
||||||
protected val activity get() = requireActivity() as MagiskActivity<*, *>
|
protected val activity get() = requireActivity() as BaseActivity<*, *>
|
||||||
|
|
||||||
override fun onCreateView(
|
override fun onCreateView(
|
||||||
inflater: LayoutInflater,
|
inflater: LayoutInflater,
|
||||||
|
@ -13,7 +13,7 @@ import io.reactivex.Observable
|
|||||||
import io.reactivex.subjects.PublishSubject
|
import io.reactivex.subjects.PublishSubject
|
||||||
|
|
||||||
|
|
||||||
abstract class MagiskViewModel(
|
abstract class BaseViewModel(
|
||||||
initialState: State = State.LOADING
|
initialState: State = State.LOADING
|
||||||
) : LoadingViewModel(initialState) {
|
) : LoadingViewModel(initialState) {
|
||||||
|
|
@ -12,8 +12,8 @@ import com.topjohnwu.magisk.Config
|
|||||||
import com.topjohnwu.magisk.Const.Key.OPEN_SECTION
|
import com.topjohnwu.magisk.Const.Key.OPEN_SECTION
|
||||||
import com.topjohnwu.magisk.Info
|
import com.topjohnwu.magisk.Info
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskActivity
|
import com.topjohnwu.magisk.base.BaseActivity
|
||||||
import com.topjohnwu.magisk.base.MagiskFragment
|
import com.topjohnwu.magisk.base.BaseFragment
|
||||||
import com.topjohnwu.magisk.databinding.ActivityMainBinding
|
import com.topjohnwu.magisk.databinding.ActivityMainBinding
|
||||||
import com.topjohnwu.magisk.extensions.addOnPropertyChangedCallback
|
import com.topjohnwu.magisk.extensions.addOnPropertyChangedCallback
|
||||||
import com.topjohnwu.magisk.extensions.snackbar
|
import com.topjohnwu.magisk.extensions.snackbar
|
||||||
@ -35,7 +35,7 @@ import org.koin.androidx.viewmodel.ext.android.viewModel
|
|||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
import kotlin.reflect.KClass
|
import kotlin.reflect.KClass
|
||||||
|
|
||||||
open class MainActivity : MagiskActivity<MainViewModel, ActivityMainBinding>(), Navigator,
|
open class MainActivity : BaseActivity<MainViewModel, ActivityMainBinding>(), Navigator,
|
||||||
FragNavController.RootFragmentListener, FragNavController.TransactionListener {
|
FragNavController.RootFragmentListener, FragNavController.TransactionListener {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.activity_main
|
override val layoutRes: Int = R.layout.activity_main
|
||||||
@ -102,7 +102,7 @@ open class MainActivity : MagiskActivity<MainViewModel, ActivityMainBinding>(),
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun onBackPressed() {
|
override fun onBackPressed() {
|
||||||
val fragment = navigationController?.currentFrag as? MagiskFragment<*, *>
|
val fragment = navigationController?.currentFrag as? BaseFragment<*, *>
|
||||||
|
|
||||||
if (fragment?.onBackPressed() == true) {
|
if (fragment?.onBackPressed() == true) {
|
||||||
return
|
return
|
||||||
|
@ -2,11 +2,11 @@ package com.topjohnwu.magisk.ui
|
|||||||
|
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.model.navigation.Navigation
|
import com.topjohnwu.magisk.model.navigation.Navigation
|
||||||
|
|
||||||
|
|
||||||
class MainViewModel : MagiskViewModel() {
|
class MainViewModel : BaseViewModel() {
|
||||||
|
|
||||||
fun navPressed() = Navigation.Main.OPEN_NAV.publish()
|
fun navPressed() = Navigation.Main.OPEN_NAV.publish()
|
||||||
|
|
||||||
|
@ -9,13 +9,13 @@ import androidx.core.net.toUri
|
|||||||
import com.topjohnwu.magisk.ClassMap
|
import com.topjohnwu.magisk.ClassMap
|
||||||
import com.topjohnwu.magisk.Const
|
import com.topjohnwu.magisk.Const
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskActivity
|
import com.topjohnwu.magisk.base.BaseActivity
|
||||||
import com.topjohnwu.magisk.databinding.ActivityFlashBinding
|
import com.topjohnwu.magisk.databinding.ActivityFlashBinding
|
||||||
import org.koin.androidx.viewmodel.ext.android.viewModel
|
import org.koin.androidx.viewmodel.ext.android.viewModel
|
||||||
import org.koin.core.parameter.parametersOf
|
import org.koin.core.parameter.parametersOf
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
||||||
open class FlashActivity : MagiskActivity<FlashViewModel, ActivityFlashBinding>() {
|
open class FlashActivity : BaseActivity<FlashViewModel, ActivityFlashBinding>() {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.activity_flash
|
override val layoutRes: Int = R.layout.activity_flash
|
||||||
override val viewModel: FlashViewModel by viewModel {
|
override val viewModel: FlashViewModel by viewModel {
|
||||||
|
@ -11,7 +11,7 @@ import com.topjohnwu.magisk.BR
|
|||||||
import com.topjohnwu.magisk.Config
|
import com.topjohnwu.magisk.Config
|
||||||
import com.topjohnwu.magisk.Const
|
import com.topjohnwu.magisk.Const
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
||||||
import com.topjohnwu.magisk.extensions.*
|
import com.topjohnwu.magisk.extensions.*
|
||||||
import com.topjohnwu.magisk.model.entity.recycler.ConsoleRvItem
|
import com.topjohnwu.magisk.model.entity.recycler.ConsoleRvItem
|
||||||
@ -31,7 +31,7 @@ class FlashViewModel(
|
|||||||
installer: Uri,
|
installer: Uri,
|
||||||
uri: Uri,
|
uri: Uri,
|
||||||
private val resources: Resources
|
private val resources: Resources
|
||||||
) : MagiskViewModel(), FlashResultListener {
|
) : BaseViewModel(), FlashResultListener {
|
||||||
|
|
||||||
val canShowReboot = Shell.rootAccess()
|
val canShowReboot = Shell.rootAccess()
|
||||||
val showRestartTitle = KObservableField(false)
|
val showRestartTitle = KObservableField(false)
|
||||||
|
@ -2,7 +2,7 @@ package com.topjohnwu.magisk.ui.hide
|
|||||||
|
|
||||||
import android.content.pm.ApplicationInfo
|
import android.content.pm.ApplicationInfo
|
||||||
import com.topjohnwu.magisk.BR
|
import com.topjohnwu.magisk.BR
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.data.repository.MagiskRepository
|
import com.topjohnwu.magisk.data.repository.MagiskRepository
|
||||||
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
||||||
import com.topjohnwu.magisk.extensions.addOnPropertyChangedCallback
|
import com.topjohnwu.magisk.extensions.addOnPropertyChangedCallback
|
||||||
@ -22,7 +22,7 @@ import timber.log.Timber
|
|||||||
class HideViewModel(
|
class HideViewModel(
|
||||||
private val magiskRepo: MagiskRepository,
|
private val magiskRepo: MagiskRepository,
|
||||||
rxBus: RxBus
|
rxBus: RxBus
|
||||||
) : MagiskViewModel() {
|
) : BaseViewModel() {
|
||||||
|
|
||||||
val query = KObservableField("")
|
val query = KObservableField("")
|
||||||
val isShowSystem = KObservableField(false)
|
val isShowSystem = KObservableField(false)
|
||||||
|
@ -6,11 +6,11 @@ import android.view.MenuItem
|
|||||||
import android.widget.SearchView
|
import android.widget.SearchView
|
||||||
import com.topjohnwu.magisk.Config
|
import com.topjohnwu.magisk.Config
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskFragment
|
import com.topjohnwu.magisk.base.BaseFragment
|
||||||
import com.topjohnwu.magisk.databinding.FragmentMagiskHideBinding
|
import com.topjohnwu.magisk.databinding.FragmentMagiskHideBinding
|
||||||
import org.koin.androidx.viewmodel.ext.android.viewModel
|
import org.koin.androidx.viewmodel.ext.android.viewModel
|
||||||
|
|
||||||
class MagiskHideFragment : MagiskFragment<HideViewModel, FragmentMagiskHideBinding>(),
|
class MagiskHideFragment : BaseFragment<HideViewModel, FragmentMagiskHideBinding>(),
|
||||||
SearchView.OnQueryTextListener {
|
SearchView.OnQueryTextListener {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.fragment_magisk_hide
|
override val layoutRes: Int = R.layout.fragment_magisk_hide
|
||||||
|
@ -5,8 +5,8 @@ import com.topjohnwu.magisk.BuildConfig
|
|||||||
import com.topjohnwu.magisk.Const
|
import com.topjohnwu.magisk.Const
|
||||||
import com.topjohnwu.magisk.Info
|
import com.topjohnwu.magisk.Info
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskActivity
|
import com.topjohnwu.magisk.base.BaseActivity
|
||||||
import com.topjohnwu.magisk.base.MagiskFragment
|
import com.topjohnwu.magisk.base.BaseFragment
|
||||||
import com.topjohnwu.magisk.data.repository.MagiskRepository
|
import com.topjohnwu.magisk.data.repository.MagiskRepository
|
||||||
import com.topjohnwu.magisk.databinding.FragmentMagiskBinding
|
import com.topjohnwu.magisk.databinding.FragmentMagiskBinding
|
||||||
import com.topjohnwu.magisk.extensions.inject
|
import com.topjohnwu.magisk.extensions.inject
|
||||||
@ -24,7 +24,7 @@ import org.koin.androidx.viewmodel.ext.android.viewModel
|
|||||||
import java.io.File
|
import java.io.File
|
||||||
import java.lang.reflect.InvocationHandler
|
import java.lang.reflect.InvocationHandler
|
||||||
|
|
||||||
class HomeFragment : MagiskFragment<HomeViewModel, FragmentMagiskBinding>(),
|
class HomeFragment : BaseFragment<HomeViewModel, FragmentMagiskBinding>(),
|
||||||
SafetyNetHelper.Callback {
|
SafetyNetHelper.Callback {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.fragment_magisk
|
override val layoutRes: Int = R.layout.fragment_magisk
|
||||||
@ -61,7 +61,7 @@ class HomeFragment : MagiskFragment<HomeViewModel, FragmentMagiskBinding>(),
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
MagiskInstallDialog(requireActivity() as MagiskActivity<*, *>).show()
|
MagiskInstallDialog(requireActivity() as BaseActivity<*, *>).show()
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun installManager() = ManagerInstallDialog(requireActivity()).show()
|
private fun installManager() = ManagerInstallDialog(requireActivity()).show()
|
||||||
|
@ -2,7 +2,7 @@ package com.topjohnwu.magisk.ui.home
|
|||||||
|
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import com.topjohnwu.magisk.*
|
import com.topjohnwu.magisk.*
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.data.repository.MagiskRepository
|
import com.topjohnwu.magisk.data.repository.MagiskRepository
|
||||||
import com.topjohnwu.magisk.extensions.*
|
import com.topjohnwu.magisk.extensions.*
|
||||||
import com.topjohnwu.magisk.model.events.*
|
import com.topjohnwu.magisk.model.events.*
|
||||||
@ -25,7 +25,7 @@ enum class MagiskItem {
|
|||||||
|
|
||||||
class HomeViewModel(
|
class HomeViewModel(
|
||||||
private val magiskRepo: MagiskRepository
|
private val magiskRepo: MagiskRepository
|
||||||
) : MagiskViewModel(State.LOADED) {
|
) : BaseViewModel(State.LOADED) {
|
||||||
|
|
||||||
val hasGMS = runCatching {
|
val hasGMS = runCatching {
|
||||||
get<PackageManager>().getPackageInfo("com.google.android.gms", 0); true
|
get<PackageManager>().getPackageInfo("com.google.android.gms", 0); true
|
||||||
|
@ -7,13 +7,13 @@ import android.view.MenuInflater
|
|||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskFragment
|
import com.topjohnwu.magisk.base.BaseFragment
|
||||||
import com.topjohnwu.magisk.databinding.FragmentLogBinding
|
import com.topjohnwu.magisk.databinding.FragmentLogBinding
|
||||||
import com.topjohnwu.magisk.model.events.PageChangedEvent
|
import com.topjohnwu.magisk.model.events.PageChangedEvent
|
||||||
import com.topjohnwu.magisk.model.events.ViewEvent
|
import com.topjohnwu.magisk.model.events.ViewEvent
|
||||||
import org.koin.androidx.viewmodel.ext.android.viewModel
|
import org.koin.androidx.viewmodel.ext.android.viewModel
|
||||||
|
|
||||||
class LogFragment : MagiskFragment<LogViewModel, FragmentLogBinding>() {
|
class LogFragment : BaseFragment<LogViewModel, FragmentLogBinding>() {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.fragment_log
|
override val layoutRes: Int = R.layout.fragment_log
|
||||||
override val viewModel: LogViewModel by viewModel()
|
override val viewModel: LogViewModel by viewModel()
|
||||||
|
@ -5,7 +5,7 @@ import com.topjohnwu.magisk.BR
|
|||||||
import com.topjohnwu.magisk.Config
|
import com.topjohnwu.magisk.Config
|
||||||
import com.topjohnwu.magisk.Const
|
import com.topjohnwu.magisk.Const
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.data.repository.LogRepository
|
import com.topjohnwu.magisk.data.repository.LogRepository
|
||||||
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
||||||
import com.topjohnwu.magisk.extensions.addOnPropertyChangedCallback
|
import com.topjohnwu.magisk.extensions.addOnPropertyChangedCallback
|
||||||
@ -30,7 +30,7 @@ import java.util.*
|
|||||||
class LogViewModel(
|
class LogViewModel(
|
||||||
private val resources: Resources,
|
private val resources: Resources,
|
||||||
private val logRepo: LogRepository
|
private val logRepo: LogRepository
|
||||||
) : MagiskViewModel(), BindingViewPagerAdapter.PageTitles<ComparableRvItem<*>> {
|
) : BaseViewModel(), BindingViewPagerAdapter.PageTitles<ComparableRvItem<*>> {
|
||||||
|
|
||||||
val itemsAdapter = BindingAdapter()
|
val itemsAdapter = BindingAdapter()
|
||||||
val items = DiffObservableList(ComparableRvItem.callback)
|
val items = DiffObservableList(ComparableRvItem.callback)
|
||||||
|
@ -3,7 +3,7 @@ package com.topjohnwu.magisk.ui.module
|
|||||||
import android.content.res.Resources
|
import android.content.res.Resources
|
||||||
import com.topjohnwu.magisk.BR
|
import com.topjohnwu.magisk.BR
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.data.database.RepoDao
|
import com.topjohnwu.magisk.data.database.RepoDao
|
||||||
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
||||||
import com.topjohnwu.magisk.extensions.*
|
import com.topjohnwu.magisk.extensions.*
|
||||||
@ -25,7 +25,7 @@ class ModuleViewModel(
|
|||||||
private val resources: Resources,
|
private val resources: Resources,
|
||||||
private val repoUpdater: RepoUpdater,
|
private val repoUpdater: RepoUpdater,
|
||||||
private val repoDB: RepoDao
|
private val repoDB: RepoDao
|
||||||
) : MagiskViewModel() {
|
) : BaseViewModel() {
|
||||||
|
|
||||||
val query = KObservableField("")
|
val query = KObservableField("")
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ import androidx.recyclerview.widget.RecyclerView
|
|||||||
import com.topjohnwu.magisk.ClassMap
|
import com.topjohnwu.magisk.ClassMap
|
||||||
import com.topjohnwu.magisk.Const
|
import com.topjohnwu.magisk.Const
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskFragment
|
import com.topjohnwu.magisk.base.BaseFragment
|
||||||
import com.topjohnwu.magisk.databinding.FragmentModulesBinding
|
import com.topjohnwu.magisk.databinding.FragmentModulesBinding
|
||||||
import com.topjohnwu.magisk.extensions.reboot
|
import com.topjohnwu.magisk.extensions.reboot
|
||||||
import com.topjohnwu.magisk.model.events.OpenFilePickerEvent
|
import com.topjohnwu.magisk.model.events.OpenFilePickerEvent
|
||||||
@ -20,7 +20,7 @@ import com.topjohnwu.magisk.ui.flash.FlashActivity
|
|||||||
import com.topjohnwu.superuser.Shell
|
import com.topjohnwu.superuser.Shell
|
||||||
import org.koin.androidx.viewmodel.ext.android.sharedViewModel
|
import org.koin.androidx.viewmodel.ext.android.sharedViewModel
|
||||||
|
|
||||||
class ModulesFragment : MagiskFragment<ModuleViewModel, FragmentModulesBinding>() {
|
class ModulesFragment : BaseFragment<ModuleViewModel, FragmentModulesBinding>() {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.fragment_modules
|
override val layoutRes: Int = R.layout.fragment_modules
|
||||||
override val viewModel: ModuleViewModel by sharedViewModel()
|
override val viewModel: ModuleViewModel by sharedViewModel()
|
||||||
|
@ -8,7 +8,7 @@ import android.view.MenuItem
|
|||||||
import android.widget.SearchView
|
import android.widget.SearchView
|
||||||
import com.topjohnwu.magisk.Config
|
import com.topjohnwu.magisk.Config
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskFragment
|
import com.topjohnwu.magisk.base.BaseFragment
|
||||||
import com.topjohnwu.magisk.databinding.FragmentReposBinding
|
import com.topjohnwu.magisk.databinding.FragmentReposBinding
|
||||||
import com.topjohnwu.magisk.model.download.DownloadService
|
import com.topjohnwu.magisk.model.download.DownloadService
|
||||||
import com.topjohnwu.magisk.model.entity.internal.Configuration
|
import com.topjohnwu.magisk.model.entity.internal.Configuration
|
||||||
@ -21,7 +21,7 @@ import com.topjohnwu.magisk.view.MarkDownWindow
|
|||||||
import com.topjohnwu.magisk.view.dialogs.CustomAlertDialog
|
import com.topjohnwu.magisk.view.dialogs.CustomAlertDialog
|
||||||
import org.koin.androidx.viewmodel.ext.android.sharedViewModel
|
import org.koin.androidx.viewmodel.ext.android.sharedViewModel
|
||||||
|
|
||||||
class ReposFragment : MagiskFragment<ModuleViewModel, FragmentReposBinding>(),
|
class ReposFragment : BaseFragment<ModuleViewModel, FragmentReposBinding>(),
|
||||||
SearchView.OnQueryTextListener {
|
SearchView.OnQueryTextListener {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.fragment_repos
|
override val layoutRes: Int = R.layout.fragment_repos
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
package com.topjohnwu.magisk.ui.superuser
|
package com.topjohnwu.magisk.ui.superuser
|
||||||
|
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskFragment
|
import com.topjohnwu.magisk.base.BaseFragment
|
||||||
import com.topjohnwu.magisk.databinding.FragmentSuperuserBinding
|
import com.topjohnwu.magisk.databinding.FragmentSuperuserBinding
|
||||||
import org.koin.androidx.viewmodel.ext.android.viewModel
|
import org.koin.androidx.viewmodel.ext.android.viewModel
|
||||||
|
|
||||||
class SuperuserFragment :
|
class SuperuserFragment :
|
||||||
MagiskFragment<SuperuserViewModel, FragmentSuperuserBinding>() {
|
BaseFragment<SuperuserViewModel, FragmentSuperuserBinding>() {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.fragment_superuser
|
override val layoutRes: Int = R.layout.fragment_superuser
|
||||||
override val viewModel: SuperuserViewModel by viewModel()
|
override val viewModel: SuperuserViewModel by viewModel()
|
||||||
|
@ -4,7 +4,7 @@ import android.content.pm.PackageManager
|
|||||||
import android.content.res.Resources
|
import android.content.res.Resources
|
||||||
import com.topjohnwu.magisk.BR
|
import com.topjohnwu.magisk.BR
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.data.database.PolicyDao
|
import com.topjohnwu.magisk.data.database.PolicyDao
|
||||||
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
||||||
import com.topjohnwu.magisk.extensions.applySchedulers
|
import com.topjohnwu.magisk.extensions.applySchedulers
|
||||||
@ -29,7 +29,7 @@ class SuperuserViewModel(
|
|||||||
private val packageManager: PackageManager,
|
private val packageManager: PackageManager,
|
||||||
private val resources: Resources,
|
private val resources: Resources,
|
||||||
rxBus: RxBus
|
rxBus: RxBus
|
||||||
) : MagiskViewModel() {
|
) : BaseViewModel() {
|
||||||
|
|
||||||
val items = DiffObservableList(ComparableRvItem.callback)
|
val items = DiffObservableList(ComparableRvItem.callback)
|
||||||
val itemBinding = ItemBinding.of<ComparableRvItem<*>> { itemBinding, _, item ->
|
val itemBinding = ItemBinding.of<ComparableRvItem<*>> { itemBinding, _, item ->
|
||||||
|
@ -6,7 +6,7 @@ import android.os.Bundle
|
|||||||
import android.text.TextUtils
|
import android.text.TextUtils
|
||||||
import android.view.Window
|
import android.view.Window
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskActivity
|
import com.topjohnwu.magisk.base.BaseActivity
|
||||||
import com.topjohnwu.magisk.databinding.ActivityRequestBinding
|
import com.topjohnwu.magisk.databinding.ActivityRequestBinding
|
||||||
import com.topjohnwu.magisk.model.entity.MagiskPolicy
|
import com.topjohnwu.magisk.model.entity.MagiskPolicy
|
||||||
import com.topjohnwu.magisk.model.events.DieEvent
|
import com.topjohnwu.magisk.model.events.DieEvent
|
||||||
@ -15,7 +15,7 @@ import com.topjohnwu.magisk.model.receiver.GeneralReceiver
|
|||||||
import com.topjohnwu.magisk.utils.SuLogger
|
import com.topjohnwu.magisk.utils.SuLogger
|
||||||
import org.koin.androidx.viewmodel.ext.android.viewModel
|
import org.koin.androidx.viewmodel.ext.android.viewModel
|
||||||
|
|
||||||
open class SuRequestActivity : MagiskActivity<SuRequestViewModel, ActivityRequestBinding>() {
|
open class SuRequestActivity : BaseActivity<SuRequestViewModel, ActivityRequestBinding>() {
|
||||||
|
|
||||||
override val layoutRes: Int = R.layout.activity_request
|
override val layoutRes: Int = R.layout.activity_request
|
||||||
override val viewModel: SuRequestViewModel by viewModel()
|
override val viewModel: SuRequestViewModel by viewModel()
|
||||||
|
@ -12,7 +12,7 @@ import android.text.TextUtils
|
|||||||
import com.topjohnwu.magisk.BuildConfig
|
import com.topjohnwu.magisk.BuildConfig
|
||||||
import com.topjohnwu.magisk.Config
|
import com.topjohnwu.magisk.Config
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.viewmodel.MagiskViewModel
|
import com.topjohnwu.magisk.base.viewmodel.BaseViewModel
|
||||||
import com.topjohnwu.magisk.data.database.PolicyDao
|
import com.topjohnwu.magisk.data.database.PolicyDao
|
||||||
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
||||||
import com.topjohnwu.magisk.extensions.addOnPropertyChangedCallback
|
import com.topjohnwu.magisk.extensions.addOnPropertyChangedCallback
|
||||||
@ -36,7 +36,7 @@ class SuRequestViewModel(
|
|||||||
private val policyDB: PolicyDao,
|
private val policyDB: PolicyDao,
|
||||||
private val timeoutPrefs: SharedPreferences,
|
private val timeoutPrefs: SharedPreferences,
|
||||||
private val resources: Resources
|
private val resources: Resources
|
||||||
) : MagiskViewModel() {
|
) : BaseViewModel() {
|
||||||
|
|
||||||
val icon = KObservableField<Drawable?>(null)
|
val icon = KObservableField<Drawable?>(null)
|
||||||
val title = KObservableField("")
|
val title = KObservableField("")
|
||||||
|
@ -7,13 +7,13 @@ import android.widget.Toast
|
|||||||
import androidx.appcompat.app.AlertDialog
|
import androidx.appcompat.app.AlertDialog
|
||||||
import com.topjohnwu.magisk.Const
|
import com.topjohnwu.magisk.Const
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskActivity
|
import com.topjohnwu.magisk.base.BaseActivity
|
||||||
import com.topjohnwu.magisk.model.download.DownloadService
|
import com.topjohnwu.magisk.model.download.DownloadService
|
||||||
import com.topjohnwu.magisk.model.entity.internal.Configuration
|
import com.topjohnwu.magisk.model.entity.internal.Configuration
|
||||||
import com.topjohnwu.magisk.model.entity.internal.DownloadSubject
|
import com.topjohnwu.magisk.model.entity.internal.DownloadSubject
|
||||||
import com.topjohnwu.magisk.utils.Utils
|
import com.topjohnwu.magisk.utils.Utils
|
||||||
|
|
||||||
internal class InstallMethodDialog(activity: MagiskActivity<*, *>, options: List<String>) :
|
internal class InstallMethodDialog(activity: BaseActivity<*, *>, options: List<String>) :
|
||||||
AlertDialog.Builder(activity) {
|
AlertDialog.Builder(activity) {
|
||||||
|
|
||||||
init {
|
init {
|
||||||
@ -28,11 +28,11 @@ internal class InstallMethodDialog(activity: MagiskActivity<*, *>, options: List
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun flash(activity: MagiskActivity<*, *>) = DownloadService(activity) {
|
private fun flash(activity: BaseActivity<*, *>) = DownloadService(activity) {
|
||||||
subject = DownloadSubject.Magisk(Configuration.Flash.Primary)
|
subject = DownloadSubject.Magisk(Configuration.Flash.Primary)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun patchBoot(activity: MagiskActivity<*, *>) = activity.withExternalRW {
|
private fun patchBoot(activity: BaseActivity<*, *>) = activity.withExternalRW {
|
||||||
onSuccess {
|
onSuccess {
|
||||||
Utils.toast(R.string.patch_file_msg, Toast.LENGTH_LONG)
|
Utils.toast(R.string.patch_file_msg, Toast.LENGTH_LONG)
|
||||||
val intent = Intent(Intent.ACTION_GET_CONTENT)
|
val intent = Intent(Intent.ACTION_GET_CONTENT)
|
||||||
@ -49,7 +49,7 @@ internal class InstallMethodDialog(activity: MagiskActivity<*, *>, options: List
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun downloadOnly(activity: MagiskActivity<*, *>) = activity.withExternalRW {
|
private fun downloadOnly(activity: BaseActivity<*, *>) = activity.withExternalRW {
|
||||||
onSuccess {
|
onSuccess {
|
||||||
DownloadService(activity) {
|
DownloadService(activity) {
|
||||||
subject = DownloadSubject.Magisk(Configuration.Download)
|
subject = DownloadSubject.Magisk(Configuration.Download)
|
||||||
@ -57,7 +57,7 @@ internal class InstallMethodDialog(activity: MagiskActivity<*, *>, options: List
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun installInactiveSlot(activity: MagiskActivity<*, *>) {
|
private fun installInactiveSlot(activity: BaseActivity<*, *>) {
|
||||||
CustomAlertDialog(activity)
|
CustomAlertDialog(activity)
|
||||||
.setTitle(R.string.warning)
|
.setTitle(R.string.warning)
|
||||||
.setMessage(R.string.install_inactive_slot_msg)
|
.setMessage(R.string.install_inactive_slot_msg)
|
||||||
|
@ -3,14 +3,14 @@ package com.topjohnwu.magisk.view.dialogs
|
|||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import com.topjohnwu.magisk.Info
|
import com.topjohnwu.magisk.Info
|
||||||
import com.topjohnwu.magisk.R
|
import com.topjohnwu.magisk.R
|
||||||
import com.topjohnwu.magisk.base.MagiskActivity
|
import com.topjohnwu.magisk.base.BaseActivity
|
||||||
import com.topjohnwu.magisk.utils.Utils
|
import com.topjohnwu.magisk.utils.Utils
|
||||||
import com.topjohnwu.magisk.view.MarkDownWindow
|
import com.topjohnwu.magisk.view.MarkDownWindow
|
||||||
import com.topjohnwu.superuser.Shell
|
import com.topjohnwu.superuser.Shell
|
||||||
import com.topjohnwu.superuser.ShellUtils
|
import com.topjohnwu.superuser.ShellUtils
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
class MagiskInstallDialog(a: MagiskActivity<*, *>) : CustomAlertDialog(a) {
|
class MagiskInstallDialog(a: BaseActivity<*, *>) : CustomAlertDialog(a) {
|
||||||
init {
|
init {
|
||||||
val filename = "Magisk v${Info.remote.magisk.version}" +
|
val filename = "Magisk v${Info.remote.magisk.version}" +
|
||||||
"(${Info.remote.magisk.versionCode})"
|
"(${Info.remote.magisk.versionCode})"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user