mirror of
https://gitlab.linphone.org/BC/public/linphone-android.git
synced 2026-01-17 03:18:06 +00:00
Improved process to enable developer settings
This commit is contained in:
parent
1307ec5471
commit
79212a8757
3 changed files with 33 additions and 15 deletions
|
|
@ -44,6 +44,8 @@ class HelpViewModel
|
|||
constructor() : GenericViewModel() {
|
||||
companion object {
|
||||
private const val TAG = "[Help ViewModel]"
|
||||
|
||||
private const val NUMBER_OF_CLICK_TO_ENABLE_DEVELOPER_MODE = 6
|
||||
}
|
||||
|
||||
val version = MutableLiveData<String>()
|
||||
|
|
@ -60,8 +62,6 @@ class HelpViewModel
|
|||
|
||||
val logsUploadInProgress = MutableLiveData<Boolean>()
|
||||
|
||||
val versionClickCount = MutableLiveData<Int>()
|
||||
|
||||
val newVersionAvailableEvent: MutableLiveData<Event<Pair<String, String>>> by lazy {
|
||||
MutableLiveData<Event<Pair<String, String>>>()
|
||||
}
|
||||
|
|
@ -90,6 +90,8 @@ class HelpViewModel
|
|||
MutableLiveData<Event<String>>()
|
||||
}
|
||||
|
||||
private var versionClickCount: Int = 0
|
||||
|
||||
private val coreListener = object : CoreListenerStub() {
|
||||
@WorkerThread
|
||||
override fun onVersionUpdateCheckResultReceived(
|
||||
|
|
@ -136,7 +138,6 @@ class HelpViewModel
|
|||
init {
|
||||
val currentVersion = BuildConfig.VERSION_NAME
|
||||
version.value = currentVersion
|
||||
versionClickCount.value = 0
|
||||
|
||||
val versionCode = BuildConfig.VERSION_CODE
|
||||
val appGitDescribe = AppUtils.getString(R.string.linphone_app_version)
|
||||
|
|
@ -153,6 +154,13 @@ class HelpViewModel
|
|||
firebaseProjectId.value = "unknown"
|
||||
}
|
||||
|
||||
versionClickCount = if (corePreferences.showDeveloperSettings) {
|
||||
Log.i("$TAG Developer are already enabled")
|
||||
NUMBER_OF_CLICK_TO_ENABLE_DEVELOPER_MODE
|
||||
} else {
|
||||
0
|
||||
}
|
||||
|
||||
coreContext.postOnCoreThread { core ->
|
||||
core.addListener(coreListener)
|
||||
|
||||
|
|
@ -172,19 +180,25 @@ class HelpViewModel
|
|||
|
||||
@UiThread
|
||||
fun versionClicked() {
|
||||
if (corePreferences.showDeveloperSettings == true) {
|
||||
showRedToast(R.string.settings_developer_already_enabled_toast, R.drawable.warning_circle)
|
||||
return
|
||||
}
|
||||
|
||||
versionClickCount.value = (versionClickCount.value ?: 0) + 1
|
||||
if (versionClickCount.value == 7) {
|
||||
coreContext.postOnCoreThread {
|
||||
Log.w("$TAG Version was clicked seven times, enabling developer settings")
|
||||
corePreferences.showDeveloperSettings = true
|
||||
|
||||
showGreenToast(R.string.settings_developer_enabled_toast, R.drawable.gear)
|
||||
versionClickCount += 1
|
||||
when (versionClickCount) {
|
||||
NUMBER_OF_CLICK_TO_ENABLE_DEVELOPER_MODE - 2 -> {
|
||||
showGreenToast(R.string.settings_developer_two_more_clicks_required_toast, R.drawable.gear)
|
||||
}
|
||||
NUMBER_OF_CLICK_TO_ENABLE_DEVELOPER_MODE - 1 -> {
|
||||
showGreenToast(R.string.settings_developer_one_more_click_required_toast, R.drawable.gear)
|
||||
}
|
||||
NUMBER_OF_CLICK_TO_ENABLE_DEVELOPER_MODE -> {
|
||||
showGreenToast(R.string.settings_developer_enabled_toast, R.drawable.gear)
|
||||
coreContext.postOnCoreThread {
|
||||
Log.w("$TAG Version was clicked seven times, enabling developer settings")
|
||||
corePreferences.showDeveloperSettings = true
|
||||
}
|
||||
}
|
||||
NUMBER_OF_CLICK_TO_ENABLE_DEVELOPER_MODE + 1 -> {
|
||||
showGreenToast(R.string.settings_developer_already_enabled_toast, R.drawable.gear)
|
||||
}
|
||||
else -> { }
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -306,6 +306,8 @@
|
|||
|
||||
<string name="settings_developer_title">Paramètres développeurs</string>
|
||||
<string name="settings_developer_show_title">Afficher les paramètres développeurs</string>
|
||||
<string name="settings_developer_two_more_clicks_required_toast">Encore 2 clicks pour activer les paramètres développeurs</string>
|
||||
<string name="settings_developer_one_more_click_required_toast">Encore 1 click pour activer les paramètres développeurs</string>
|
||||
<string name="settings_developer_enabled_toast">Paramètres développeurs activés</string>
|
||||
<string name="settings_developer_already_enabled_toast">Paramètres développeurs déjà activés</string>
|
||||
<string name="settings_developer_enable_vu_meters_title">Activer l\'indicateur des volumes d\'enregistrement et de lecture</string>
|
||||
|
|
|
|||
|
|
@ -347,6 +347,8 @@
|
|||
|
||||
<string name="settings_developer_title">Developer settings</string>
|
||||
<string name="settings_developer_show_title">Show developer settings</string>
|
||||
<string name="settings_developer_two_more_clicks_required_toast">Click 2 more times to enable developer settings</string>
|
||||
<string name="settings_developer_one_more_click_required_toast">Click 1 more time to enable developer settings</string>
|
||||
<string name="settings_developer_enabled_toast">Developer settings enabled</string>
|
||||
<string name="settings_developer_already_enabled_toast">Developer settings already enabled</string>
|
||||
<string name="settings_developer_enable_vu_meters_title">Enable record/playback volume vu meters while in call</string>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue