forked from penguin86/luna-tracker
add setting to disable breastfeeding buttons
Some women do not breastfeed. Hide the buttons in order to have more space for log messages.
This commit is contained in:
@@ -168,6 +168,12 @@ class MainActivity : AppCompatActivity() {
|
||||
logbookRepo = FileLogbookRepository()
|
||||
}
|
||||
|
||||
val noBreastfeeding = settingsRepository.loadNoBreastfeeding()
|
||||
findViewById<View>(R.id.layout_nipples).visibility = when (noBreastfeeding) {
|
||||
true -> View.GONE
|
||||
false -> View.VISIBLE
|
||||
}
|
||||
|
||||
// Update list dates
|
||||
recyclerView.adapter?.notifyDataSetChanged()
|
||||
|
||||
|
@@ -7,6 +7,7 @@ import android.widget.TextView
|
||||
import android.widget.Toast
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import com.google.android.material.progressindicator.LinearProgressIndicator
|
||||
import com.google.android.material.switchmaterial.SwitchMaterial
|
||||
import com.thegrizzlylabs.sardineandroid.impl.SardineException
|
||||
import it.danieleverducci.lunatracker.repository.FileLogbookRepository
|
||||
import it.danieleverducci.lunatracker.repository.LocalSettingsRepository
|
||||
@@ -24,6 +25,7 @@ open class SettingsActivity : AppCompatActivity() {
|
||||
protected lateinit var textViewWebDAVUser: TextView
|
||||
protected lateinit var textViewWebDAVPass: TextView
|
||||
protected lateinit var progressIndicator: LinearProgressIndicator
|
||||
protected lateinit var switchNoBreastfeeding: SwitchMaterial
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
@@ -35,6 +37,8 @@ open class SettingsActivity : AppCompatActivity() {
|
||||
textViewWebDAVUser = findViewById(R.id.settings_data_webdav_user)
|
||||
textViewWebDAVPass = findViewById(R.id.settings_data_webdav_pass)
|
||||
progressIndicator = findViewById(R.id.progress_indicator)
|
||||
switchNoBreastfeeding = findViewById(R.id.switch_no_breastfeeding)
|
||||
|
||||
findViewById<View>(R.id.settings_save).setOnClickListener({
|
||||
validateAndSave()
|
||||
})
|
||||
@@ -49,11 +53,15 @@ open class SettingsActivity : AppCompatActivity() {
|
||||
fun loadSettings() {
|
||||
val dataRepo = settingsRepository.loadDataRepository()
|
||||
val webDavCredentials = settingsRepository.loadWebdavCredentials()
|
||||
val noBreastfeeding = settingsRepository.loadNoBreastfeeding()
|
||||
|
||||
when (dataRepo) {
|
||||
LocalSettingsRepository.DATA_REPO.LOCAL_FILE -> radioDataLocal.isChecked = true
|
||||
LocalSettingsRepository.DATA_REPO.WEBDAV -> radioDataWebDAV.isChecked = true
|
||||
}
|
||||
|
||||
switchNoBreastfeeding.isChecked = noBreastfeeding
|
||||
|
||||
if (webDavCredentials != null) {
|
||||
textViewWebDAVUrl.setText(webDavCredentials[0])
|
||||
textViewWebDAVUser.setText(webDavCredentials[1])
|
||||
@@ -149,6 +157,7 @@ open class SettingsActivity : AppCompatActivity() {
|
||||
if (radioDataWebDAV.isChecked) LocalSettingsRepository.DATA_REPO.WEBDAV
|
||||
else LocalSettingsRepository.DATA_REPO.LOCAL_FILE
|
||||
)
|
||||
settingsRepository.saveNoBreastfeeding(switchNoBreastfeeding.isChecked)
|
||||
settingsRepository.saveWebdavCredentials(
|
||||
textViewWebDAVUrl.text.toString(),
|
||||
textViewWebDAVUser.text.toString(),
|
||||
|
@@ -3,6 +3,7 @@ package it.danieleverducci.lunatracker.repository
|
||||
import android.content.Context
|
||||
import android.content.Context.MODE_PRIVATE
|
||||
import android.content.SharedPreferences
|
||||
import androidx.core.content.edit
|
||||
|
||||
class LocalSettingsRepository(val context: Context) {
|
||||
companion object {
|
||||
@@ -12,6 +13,7 @@ class LocalSettingsRepository(val context: Context) {
|
||||
val SHARED_PREFS_DAV_URL = "webdav_url"
|
||||
val SHARED_PREFS_DAV_USER = "webdav_user"
|
||||
val SHARED_PREFS_DAV_PASS = "webdav_password"
|
||||
val SHARED_PREFS_NO_BREASTFEEDING = "no_breastfeeding"
|
||||
}
|
||||
enum class DATA_REPO {LOCAL_FILE, WEBDAV}
|
||||
val sharedPreferences: SharedPreferences
|
||||
@@ -28,6 +30,14 @@ class LocalSettingsRepository(val context: Context) {
|
||||
return sharedPreferences.getInt(SHARED_PREFS_BB_CONTENT, 1)
|
||||
}
|
||||
|
||||
fun saveNoBreastfeeding(content: Boolean) {
|
||||
sharedPreferences.edit().putBoolean(SHARED_PREFS_NO_BREASTFEEDING, content).apply()
|
||||
}
|
||||
|
||||
fun loadNoBreastfeeding(): Boolean {
|
||||
return sharedPreferences.getBoolean(SHARED_PREFS_NO_BREASTFEEDING, false)
|
||||
}
|
||||
|
||||
fun saveDataRepository(repo: DATA_REPO) {
|
||||
val spe = sharedPreferences.edit()
|
||||
spe.putString(
|
||||
|
Reference in New Issue
Block a user