mirror of
https://github.com/topjohnwu/Magisk.git
synced 2024-11-27 12:05:30 +00:00
Update vbmeta option hiding criteria
Hide when Samsung, A/B, or vbmeta partition exists
This commit is contained in:
parent
fd7bf2bc3a
commit
ba6e6cc15a
@ -28,21 +28,23 @@ object Info {
|
|||||||
|
|
||||||
// Device state
|
// Device state
|
||||||
@JvmStatic val env by lazy { loadState() }
|
@JvmStatic val env by lazy { loadState() }
|
||||||
@JvmStatic var isSAR = false
|
@JvmField var isSAR = false
|
||||||
var isAB = false
|
var isAB = false
|
||||||
val isVirtualAB = getProperty("ro.virtual_ab.enabled", "false") == "true"
|
val isVirtualAB = getProperty("ro.virtual_ab.enabled", "false") == "true"
|
||||||
@JvmField val isZygiskEnabled = System.getenv("ZYGISK_ENABLED") == "1"
|
@JvmField val isZygiskEnabled = System.getenv("ZYGISK_ENABLED") == "1"
|
||||||
@JvmStatic val isFDE get() = crypto == "block"
|
@JvmStatic val isFDE get() = crypto == "block"
|
||||||
@JvmField var ramdisk = false
|
@JvmField var ramdisk = false
|
||||||
@JvmField var vbmeta = false
|
@JvmField var vbmeta = false
|
||||||
@JvmField var hasGMS = true
|
|
||||||
@JvmField val isPixel = Build.BRAND == "google"
|
|
||||||
@JvmField val isEmulator =
|
|
||||||
getProperty("ro.kernel.qemu", "0") == "1" ||
|
|
||||||
getProperty("ro.boot.qemu", "0") == "1"
|
|
||||||
var crypto = ""
|
var crypto = ""
|
||||||
var noDataExec = false
|
var noDataExec = false
|
||||||
|
|
||||||
|
@JvmField var hasGMS = true
|
||||||
|
@JvmField val isPixel = Build.BRAND == "google"
|
||||||
|
val isSamsung = Build.MANUFACTURER.equals("samsung", ignoreCase = true)
|
||||||
|
@JvmField val isEmulator =
|
||||||
|
getProperty("ro.kernel.qemu", "0") == "1" ||
|
||||||
|
getProperty("ro.boot.qemu", "0") == "1"
|
||||||
|
|
||||||
val isConnected by lazy {
|
val isConnected by lazy {
|
||||||
ObservableBoolean(false).also { field ->
|
ObservableBoolean(false).also { field ->
|
||||||
NetworkObserver.observe(AppContext) {
|
NetworkObserver.observe(AppContext) {
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package com.topjohnwu.magisk.ui.install
|
package com.topjohnwu.magisk.ui.install
|
||||||
|
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.os.Build
|
|
||||||
import androidx.databinding.Bindable
|
import androidx.databinding.Bindable
|
||||||
import androidx.lifecycle.viewModelScope
|
import androidx.lifecycle.viewModelScope
|
||||||
import com.topjohnwu.magisk.BR
|
import com.topjohnwu.magisk.BR
|
||||||
@ -27,11 +26,12 @@ class InstallViewModel(
|
|||||||
) : BaseViewModel() {
|
) : BaseViewModel() {
|
||||||
|
|
||||||
val isRooted = Shell.rootAccess()
|
val isRooted = Shell.rootAccess()
|
||||||
val skipOptions = Info.ramdisk && !Info.isFDE && Info.isSAR && !(!Info.vbmeta && Build.VERSION.SDK_INT >= 30)
|
val hideVbmeta = Info.vbmeta || Info.isSamsung || Info.isAB
|
||||||
|
val skipOptions = Info.isEmulator || (Info.isSAR && !Info.isFDE && hideVbmeta && Info.ramdisk)
|
||||||
val noSecondSlot = !isRooted || Info.isPixel || Info.isVirtualAB || !Info.isAB || Info.isEmulator
|
val noSecondSlot = !isRooted || Info.isPixel || Info.isVirtualAB || !Info.isAB || Info.isEmulator
|
||||||
|
|
||||||
@get:Bindable
|
@get:Bindable
|
||||||
var step = if (Info.isEmulator || skipOptions) 1 else 0
|
var step = if (skipOptions) 1 else 0
|
||||||
set(value) = set(value, field, { field = it }, BR.step)
|
set(value) = set(value, field, { field = it }, BR.step)
|
||||||
|
|
||||||
var _method = -1
|
var _method = -1
|
||||||
|
@ -9,8 +9,6 @@
|
|||||||
|
|
||||||
<import type="com.topjohnwu.magisk.core.Config" />
|
<import type="com.topjohnwu.magisk.core.Config" />
|
||||||
|
|
||||||
<import type="android.os.Build" />
|
|
||||||
|
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="com.topjohnwu.magisk.ui.install.InstallViewModel" />
|
type="com.topjohnwu.magisk.ui.install.InstallViewModel" />
|
||||||
@ -36,7 +34,7 @@
|
|||||||
|
|
||||||
<com.google.android.material.card.MaterialCardView
|
<com.google.android.material.card.MaterialCardView
|
||||||
style="@style/WidgetFoundation.Card"
|
style="@style/WidgetFoundation.Card"
|
||||||
gone="@{viewModel.skipOptions || Info.isEmulator}"
|
gone="@{viewModel.skipOptions}"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginStart="@dimen/l1"
|
android:layout_marginStart="@dimen/l1"
|
||||||
@ -112,7 +110,7 @@
|
|||||||
|
|
||||||
<CheckBox
|
<CheckBox
|
||||||
style="@style/WidgetFoundation.Checkbox"
|
style="@style/WidgetFoundation.Checkbox"
|
||||||
goneUnless="@{!Info.vbmeta && Build.VERSION.SDK_INT >= 30}"
|
gone="@{viewModel.hideVbmeta}"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:checked="@={Config.patchVbmeta}"
|
android:checked="@={Config.patchVbmeta}"
|
||||||
|
Loading…
Reference in New Issue
Block a user