113 lines
4.4 KiB
Kotlin
113 lines
4.4 KiB
Kotlin
package com.simplemobiletools.contacts.activities
|
|
|
|
import android.os.Bundle
|
|
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
|
import com.simplemobiletools.commons.extensions.beVisibleIf
|
|
import com.simplemobiletools.commons.extensions.updateTextColors
|
|
import com.simplemobiletools.commons.extensions.useEnglishToggled
|
|
import com.simplemobiletools.commons.models.RadioItem
|
|
import com.simplemobiletools.contacts.R
|
|
import com.simplemobiletools.contacts.extensions.config
|
|
import com.simplemobiletools.contacts.helpers.ON_CLICK_CALL_CONTACT
|
|
import com.simplemobiletools.contacts.helpers.ON_CLICK_EDIT_CONTACT
|
|
import com.simplemobiletools.contacts.helpers.ON_CLICK_VIEW_CONTACT
|
|
import kotlinx.android.synthetic.main.activity_settings.*
|
|
import java.util.*
|
|
|
|
class SettingsActivity : SimpleActivity() {
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
super.onCreate(savedInstanceState)
|
|
setContentView(R.layout.activity_settings)
|
|
}
|
|
|
|
override fun onResume() {
|
|
super.onResume()
|
|
|
|
setupCustomizeColors()
|
|
setupUseEnglish()
|
|
setupAvoidWhatsNew()
|
|
setupShowInfoBubble()
|
|
setupShowContactThumbnails()
|
|
setupShowPhoneNumbers()
|
|
setupStartNameWithSurname()
|
|
setupOnContactClick()
|
|
updateTextColors(settings_holder)
|
|
}
|
|
|
|
private fun setupCustomizeColors() {
|
|
settings_customize_colors_holder.setOnClickListener {
|
|
startCustomizationActivity()
|
|
}
|
|
}
|
|
|
|
private fun setupUseEnglish() {
|
|
settings_use_english_holder.beVisibleIf(config.wasUseEnglishToggled || Locale.getDefault().language != "en")
|
|
settings_use_english.isChecked = config.useEnglish
|
|
settings_use_english_holder.setOnClickListener {
|
|
settings_use_english.toggle()
|
|
config.useEnglish = settings_use_english.isChecked
|
|
useEnglishToggled()
|
|
}
|
|
}
|
|
|
|
private fun setupAvoidWhatsNew() {
|
|
settings_avoid_whats_new.isChecked = config.avoidWhatsNew
|
|
settings_avoid_whats_new_holder.setOnClickListener {
|
|
settings_avoid_whats_new.toggle()
|
|
config.avoidWhatsNew = settings_avoid_whats_new.isChecked
|
|
}
|
|
}
|
|
|
|
private fun setupShowInfoBubble() {
|
|
settings_show_info_bubble.isChecked = config.showInfoBubble
|
|
settings_show_info_bubble_holder.setOnClickListener {
|
|
settings_show_info_bubble.toggle()
|
|
config.showInfoBubble = settings_show_info_bubble.isChecked
|
|
}
|
|
}
|
|
|
|
private fun setupShowContactThumbnails() {
|
|
settings_show_contact_thumbnails.isChecked = config.showContactThumbnails
|
|
settings_show_contact_thumbnails_holder.setOnClickListener {
|
|
settings_show_contact_thumbnails.toggle()
|
|
config.showContactThumbnails = settings_show_contact_thumbnails.isChecked
|
|
}
|
|
}
|
|
|
|
private fun setupShowPhoneNumbers() {
|
|
settings_show_phone_numbers.isChecked = config.showPhoneNumbers
|
|
settings_show_phone_numbers_holder.setOnClickListener {
|
|
settings_show_phone_numbers.toggle()
|
|
config.showPhoneNumbers = settings_show_phone_numbers.isChecked
|
|
}
|
|
}
|
|
|
|
private fun setupStartNameWithSurname() {
|
|
settings_start_with_surname.isChecked = config.startNameWithSurname
|
|
settings_start_with_surname_holder.setOnClickListener {
|
|
settings_start_with_surname.toggle()
|
|
config.startNameWithSurname = settings_start_with_surname.isChecked
|
|
}
|
|
}
|
|
|
|
private fun setupOnContactClick() {
|
|
settings_on_contact_click.text = getOnContactClickText()
|
|
settings_on_contact_click_holder.setOnClickListener {
|
|
val items = arrayListOf(
|
|
RadioItem(ON_CLICK_CALL_CONTACT, getString(R.string.call_contact)),
|
|
RadioItem(ON_CLICK_VIEW_CONTACT, getString(R.string.view_contact)),
|
|
RadioItem(ON_CLICK_EDIT_CONTACT, getString(R.string.edit_contact)))
|
|
|
|
RadioGroupDialog(this@SettingsActivity, items, config.onContactClick) {
|
|
config.onContactClick = it as Int
|
|
settings_on_contact_click.text = getOnContactClickText()
|
|
}
|
|
}
|
|
}
|
|
|
|
private fun getOnContactClickText() = getString(when (config.onContactClick) {
|
|
ON_CLICK_CALL_CONTACT -> R.string.call_contact
|
|
ON_CLICK_VIEW_CONTACT -> R.string.view_contact
|
|
else -> R.string.edit_contact
|
|
})
|
|
}
|