mirror of
https://github.com/SimpleMobileTools/Simple-Contacts.git
synced 2025-02-10 08:30:37 +01:00
New backup settings in SettingsActivity
This commit is contained in:
parent
0e205e6cb3
commit
a3338b994c
@ -6,11 +6,15 @@ import com.simplemobiletools.commons.extensions.*
|
|||||||
import com.simplemobiletools.commons.helpers.*
|
import com.simplemobiletools.commons.helpers.*
|
||||||
import com.simplemobiletools.commons.models.RadioItem
|
import com.simplemobiletools.commons.models.RadioItem
|
||||||
import com.simplemobiletools.contacts.pro.R
|
import com.simplemobiletools.contacts.pro.R
|
||||||
|
import com.simplemobiletools.contacts.pro.dialogs.ManageAutoBackupsDialog
|
||||||
import com.simplemobiletools.contacts.pro.dialogs.ManageVisibleFieldsDialog
|
import com.simplemobiletools.contacts.pro.dialogs.ManageVisibleFieldsDialog
|
||||||
import com.simplemobiletools.contacts.pro.dialogs.ManageVisibleTabsDialog
|
import com.simplemobiletools.contacts.pro.dialogs.ManageVisibleTabsDialog
|
||||||
|
import com.simplemobiletools.contacts.pro.extensions.cancelScheduledAutomaticBackup
|
||||||
import com.simplemobiletools.contacts.pro.extensions.config
|
import com.simplemobiletools.contacts.pro.extensions.config
|
||||||
|
import com.simplemobiletools.contacts.pro.extensions.scheduleNextAutomaticBackup
|
||||||
import kotlinx.android.synthetic.main.activity_settings.*
|
import kotlinx.android.synthetic.main.activity_settings.*
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
import kotlin.system.exitProcess
|
||||||
|
|
||||||
class SettingsActivity : SimpleActivity() {
|
class SettingsActivity : SimpleActivity() {
|
||||||
|
|
||||||
@ -42,6 +46,8 @@ class SettingsActivity : SimpleActivity() {
|
|||||||
setupShowPrivateContacts()
|
setupShowPrivateContacts()
|
||||||
setupOnContactClick()
|
setupOnContactClick()
|
||||||
setupDefaultTab()
|
setupDefaultTab()
|
||||||
|
setupEnableAutomaticBackups()
|
||||||
|
setupManageAutomaticBackups()
|
||||||
updateTextColors(settings_holder)
|
updateTextColors(settings_holder)
|
||||||
|
|
||||||
arrayOf(settings_color_customization_section_label, settings_general_settings_label, settings_main_screen_label, settings_list_view_label).forEach {
|
arrayOf(settings_color_customization_section_label, settings_general_settings_label, settings_main_screen_label, settings_list_view_label).forEach {
|
||||||
@ -116,7 +122,7 @@ class SettingsActivity : SimpleActivity() {
|
|||||||
settings_use_english_holder.setOnClickListener {
|
settings_use_english_holder.setOnClickListener {
|
||||||
settings_use_english.toggle()
|
settings_use_english.toggle()
|
||||||
config.useEnglish = settings_use_english.isChecked
|
config.useEnglish = settings_use_english.isChecked
|
||||||
System.exit(0)
|
exitProcess(0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -215,4 +221,43 @@ class SettingsActivity : SimpleActivity() {
|
|||||||
config.mergeDuplicateContacts = settings_merge_duplicate_contacts.isChecked
|
config.mergeDuplicateContacts = settings_merge_duplicate_contacts.isChecked
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun setupEnableAutomaticBackups() {
|
||||||
|
settings_backups_label.beVisibleIf(isRPlus())
|
||||||
|
settings_enable_automatic_backups_holder.beVisibleIf(isRPlus())
|
||||||
|
settings_enable_automatic_backups.isChecked = config.autoBackup
|
||||||
|
settings_enable_automatic_backups_holder.setOnClickListener {
|
||||||
|
val wasBackupDisabled = !config.autoBackup
|
||||||
|
if (wasBackupDisabled) {
|
||||||
|
ManageAutoBackupsDialog(
|
||||||
|
activity = this,
|
||||||
|
onSuccess = {
|
||||||
|
enableOrDisableAutomaticBackups(true)
|
||||||
|
scheduleNextAutomaticBackup()
|
||||||
|
}
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
cancelScheduledAutomaticBackup()
|
||||||
|
enableOrDisableAutomaticBackups(false)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun setupManageAutomaticBackups() {
|
||||||
|
settings_manage_automatic_backups_holder.beVisibleIf(isRPlus() && config.autoBackup)
|
||||||
|
settings_manage_automatic_backups_holder.setOnClickListener {
|
||||||
|
ManageAutoBackupsDialog(
|
||||||
|
activity = this,
|
||||||
|
onSuccess = {
|
||||||
|
scheduleNextAutomaticBackup()
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun enableOrDisableAutomaticBackups(enable: Boolean) {
|
||||||
|
config.autoBackup = enable
|
||||||
|
settings_enable_automatic_backups.isChecked = enable
|
||||||
|
settings_manage_automatic_backups_holder.beVisibleIf(enable)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user