diff --git a/app-common/src/main/java/im/angry/openeuicc/ui/EuiccManagementFragment.kt b/app-common/src/main/java/im/angry/openeuicc/ui/EuiccManagementFragment.kt index a23c166..58bf0ba 100644 --- a/app-common/src/main/java/im/angry/openeuicc/ui/EuiccManagementFragment.kt +++ b/app-common/src/main/java/im/angry/openeuicc/ui/EuiccManagementFragment.kt @@ -39,8 +39,10 @@ import im.angry.openeuicc.util.* import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.TimeoutCancellationException import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.flow.first import kotlinx.coroutines.flow.stateIn import kotlinx.coroutines.launch +import kotlinx.coroutines.runBlocking import kotlinx.coroutines.withContext open class EuiccManagementFragment : Fragment(), EuiccProfilesChangedListener, @@ -139,8 +141,10 @@ open class EuiccManagementFragment : Fragment(), EuiccProfilesChangedListener, logicalSlotId != -1 menu.findItem(R.id.euicc_info).isVisible = logicalSlotId != -1 - menu.findItem(R.id.euicc_memory_reset).isVisible = - logicalSlotId == EuiccChannelManager.USB_CHANNEL_ID + menu.findItem(R.id.euicc_memory_reset).apply { + isEnabled = runBlocking { preferenceRepository.euiccMemoryResetFlow.first() } + isVisible = isEnabled and isUsb + } } override fun onOptionsItemSelected(item: MenuItem) = when (item.itemId) { diff --git a/app-common/src/main/java/im/angry/openeuicc/ui/EuiccMemoryResetFragment.kt b/app-common/src/main/java/im/angry/openeuicc/ui/EuiccMemoryResetFragment.kt index 4187bd3..00e0785 100644 --- a/app-common/src/main/java/im/angry/openeuicc/ui/EuiccMemoryResetFragment.kt +++ b/app-common/src/main/java/im/angry/openeuicc/ui/EuiccMemoryResetFragment.kt @@ -3,10 +3,7 @@ package im.angry.openeuicc.ui import android.graphics.Typeface import android.os.Bundle import android.text.Editable -import android.text.InputType import android.util.Log -import android.view.View -import android.view.inputmethod.EditorInfo import android.widget.EditText import android.widget.Toast import androidx.appcompat.app.AlertDialog