forked from PeterCxy/OpenEUICC
Compare commits
No commits in common. "b88345057ce42618f1071f56a5f10d01ef527bd1" and "24076e8fb4dc4a14c7da0a064c4c97ba4444915b" have entirely different histories.
b88345057c
...
24076e8fb4
4 changed files with 24 additions and 40 deletions
|
@ -1,7 +1,6 @@
|
||||||
package im.angry.openeuicc.ui
|
package im.angry.openeuicc.ui
|
||||||
|
|
||||||
import android.icu.text.SimpleDateFormat
|
import android.icu.text.SimpleDateFormat
|
||||||
import android.os.Build
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.Menu
|
import android.view.Menu
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
|
@ -33,19 +32,9 @@ class LogsActivity : AppCompatActivity() {
|
||||||
SimpleDateFormat.getDateTimeInstance().format(Date())
|
SimpleDateFormat.getDateTimeInstance().format(Date())
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
getLogText = ::buildLogText
|
getLogText = { logStr }
|
||||||
)
|
)
|
||||||
|
|
||||||
private fun buildLogText() = buildString {
|
|
||||||
appendLine("Manufacturer: ${Build.MANUFACTURER}")
|
|
||||||
appendLine("Brand: ${Build.BRAND}")
|
|
||||||
appendLine("Model: ${Build.MODEL}")
|
|
||||||
appendLine("SDK Version: ${Build.VERSION.SDK_INT}")
|
|
||||||
appendLine("App Version: $selfAppVersion")
|
|
||||||
appendLine("-".repeat(10))
|
|
||||||
appendLine(logStr)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
|
@ -29,7 +29,7 @@ open class SettingsFragment: PreferenceFragmentCompat() {
|
||||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||||
setPreferencesFromResource(R.xml.pref_settings, rootKey)
|
setPreferencesFromResource(R.xml.pref_settings, rootKey)
|
||||||
|
|
||||||
developerPref = requirePreference("pref_developer")
|
developerPref = findPreference("pref_developer")!!
|
||||||
|
|
||||||
// Show / hide developer preference based on whether it is enabled
|
// Show / hide developer preference based on whether it is enabled
|
||||||
lifecycleScope.launch {
|
lifecycleScope.launch {
|
||||||
|
@ -38,14 +38,14 @@ open class SettingsFragment: PreferenceFragmentCompat() {
|
||||||
.collect()
|
.collect()
|
||||||
}
|
}
|
||||||
|
|
||||||
requirePreference<Preference>("pref_info_app_version").apply {
|
findPreference<Preference>("pref_info_app_version")?.apply {
|
||||||
summary = requireContext().selfAppVersion
|
summary = requireContext().selfAppVersion
|
||||||
|
|
||||||
// Enable developer options when this is clicked for 7 times
|
// Enable developer options when this is clicked for 7 times
|
||||||
setOnPreferenceClickListener(::onAppVersionClicked)
|
setOnPreferenceClickListener(::onAppVersionClicked)
|
||||||
}
|
}
|
||||||
|
|
||||||
requirePreference<Preference>("pref_advanced_language").apply {
|
findPreference<Preference>("pref_advanced_language")?.apply {
|
||||||
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) return@apply
|
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) return@apply
|
||||||
isVisible = true
|
isVisible = true
|
||||||
intent = Intent(Settings.ACTION_APP_LOCALE_SETTINGS).apply {
|
intent = Intent(Settings.ACTION_APP_LOCALE_SETTINGS).apply {
|
||||||
|
@ -53,35 +53,32 @@ open class SettingsFragment: PreferenceFragmentCompat() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
requirePreference<Preference>("pref_advanced_logs").apply {
|
findPreference<Preference>("pref_advanced_logs")?.apply {
|
||||||
intent = Intent(requireContext(), LogsActivity::class.java)
|
intent = Intent(requireContext(), LogsActivity::class.java)
|
||||||
}
|
}
|
||||||
|
|
||||||
requirePreference<CheckBoxPreference>("pref_notifications_download")
|
findPreference<CheckBoxPreference>("pref_notifications_download")
|
||||||
.bindBooleanFlow(preferenceRepository.notificationDownloadFlow)
|
?.bindBooleanFlow(preferenceRepository.notificationDownloadFlow)
|
||||||
|
|
||||||
requirePreference<CheckBoxPreference>("pref_notifications_delete")
|
findPreference<CheckBoxPreference>("pref_notifications_delete")
|
||||||
.bindBooleanFlow(preferenceRepository.notificationDeleteFlow)
|
?.bindBooleanFlow(preferenceRepository.notificationDeleteFlow)
|
||||||
|
|
||||||
requirePreference<CheckBoxPreference>("pref_notifications_switch")
|
findPreference<CheckBoxPreference>("pref_notifications_switch")
|
||||||
.bindBooleanFlow(preferenceRepository.notificationSwitchFlow)
|
?.bindBooleanFlow(preferenceRepository.notificationSwitchFlow)
|
||||||
|
|
||||||
requirePreference<CheckBoxPreference>("pref_advanced_disable_safeguard_removable_esim")
|
findPreference<CheckBoxPreference>("pref_advanced_disable_safeguard_removable_esim")
|
||||||
.bindBooleanFlow(preferenceRepository.disableSafeguardFlow)
|
?.bindBooleanFlow(preferenceRepository.disableSafeguardFlow)
|
||||||
|
|
||||||
requirePreference<CheckBoxPreference>("pref_advanced_verbose_logging")
|
findPreference<CheckBoxPreference>("pref_advanced_verbose_logging")
|
||||||
.bindBooleanFlow(preferenceRepository.verboseLoggingFlow)
|
?.bindBooleanFlow(preferenceRepository.verboseLoggingFlow)
|
||||||
|
|
||||||
requirePreference<CheckBoxPreference>("pref_developer_unfiltered_profile_list")
|
findPreference<CheckBoxPreference>("pref_developer_unfiltered_profile_list")
|
||||||
.bindBooleanFlow(preferenceRepository.unfilteredProfileListFlow)
|
?.bindBooleanFlow(preferenceRepository.unfilteredProfileListFlow)
|
||||||
|
|
||||||
requirePreference<CheckBoxPreference>("pref_developer_ignore_tls_certificate")
|
findPreference<CheckBoxPreference>("pref_ignore_tls_certificate")
|
||||||
.bindBooleanFlow(preferenceRepository.ignoreTLSCertificateFlow)
|
?.bindBooleanFlow(preferenceRepository.ignoreTLSCertificateFlow)
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun <T : Preference> requirePreference(key: CharSequence) =
|
|
||||||
findPreference<T>(key)!!
|
|
||||||
|
|
||||||
override fun onStart() {
|
override fun onStart() {
|
||||||
super.onStart()
|
super.onStart()
|
||||||
setupRootViewInsets(requireView().requireViewById(R.id.recycler_view))
|
setupRootViewInsets(requireView().requireViewById(R.id.recycler_view))
|
||||||
|
@ -136,8 +133,8 @@ open class SettingsFragment: PreferenceFragmentCompat() {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun mergePreferenceOverlay(overlayKey: String, targetKey: String) {
|
protected fun mergePreferenceOverlay(overlayKey: String, targetKey: String) {
|
||||||
val overlayCat = requirePreference<PreferenceCategory>(overlayKey)
|
val overlayCat = findPreference<PreferenceCategory>(overlayKey)!!
|
||||||
val targetCat = requirePreference<PreferenceCategory>(targetKey)
|
val targetCat = findPreference<PreferenceCategory>(targetKey)!!
|
||||||
|
|
||||||
val prefs = buildList {
|
val prefs = buildList {
|
||||||
for (i in 0..<overlayCat.preferenceCount) {
|
for (i in 0..<overlayCat.preferenceCount) {
|
||||||
|
|
|
@ -43,8 +43,7 @@
|
||||||
android:id="@+id/profile_download_code"
|
android:id="@+id/profile_download_code"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:hint="@string/profile_download_code"
|
android:hint="@string/profile_download_code">
|
||||||
app:passwordToggleEnabled="true">
|
|
||||||
|
|
||||||
<com.google.android.material.textfield.TextInputEditText
|
<com.google.android.material.textfield.TextInputEditText
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
|
@ -58,8 +57,7 @@
|
||||||
android:id="@+id/profile_download_confirmation_code"
|
android:id="@+id/profile_download_confirmation_code"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:hint="@string/profile_download_confirmation_code"
|
android:hint="@string/profile_download_confirmation_code">
|
||||||
app:passwordToggleEnabled="true">
|
|
||||||
|
|
||||||
<com.google.android.material.textfield.TextInputEditText
|
<com.google.android.material.textfield.TextInputEditText
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
|
|
|
@ -31,7 +31,7 @@ class UnprivilegedSettingsFragment : SettingsFragment() {
|
||||||
addPreferencesFromResource(R.xml.pref_unprivileged_settings)
|
addPreferencesFromResource(R.xml.pref_unprivileged_settings)
|
||||||
mergePreferenceOverlay("pref_info_overlay", "pref_info")
|
mergePreferenceOverlay("pref_info_overlay", "pref_info")
|
||||||
|
|
||||||
requirePreference<Preference>("pref_info_ara_m").apply {
|
findPreference<Preference>("pref_info_ara_m")?.apply {
|
||||||
summary = firstSigner.encodeHex()
|
summary = firstSigner.encodeHex()
|
||||||
setOnPreferenceClickListener {
|
setOnPreferenceClickListener {
|
||||||
requireContext().getSystemService(ClipboardManager::class.java)!!
|
requireContext().getSystemService(ClipboardManager::class.java)!!
|
||||||
|
|
Loading…
Add table
Reference in a new issue