mirror of
https://github.com/SimpleMobileTools/Simple-Clock.git
synced 2025-02-09 00:18:44 +01:00
update timer and alarm sounds if the current selection has been deleted
This commit is contained in:
parent
b9adb1306b
commit
3cf6ef12bf
@ -155,12 +155,16 @@ class MainActivity : SimpleActivity() {
|
|||||||
|
|
||||||
when (view_pager.currentItem) {
|
when (view_pager.currentItem) {
|
||||||
TAB_ALARM -> getViewPagerAdapter()?.updateAlarmTabAlarmSound(newAlarmSound)
|
TAB_ALARM -> getViewPagerAdapter()?.updateAlarmTabAlarmSound(newAlarmSound)
|
||||||
TAB_TIMER -> getViewPagerAdapter()?.updateTimerTabAlarmSound(newAlarmSound)
|
TAB_TIMER -> updateTimerTabAlarmSound(newAlarmSound)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun getViewPagerAdapter() = view_pager.adapter as? ViewPagerAdapter
|
private fun getViewPagerAdapter() = view_pager.adapter as? ViewPagerAdapter
|
||||||
|
|
||||||
|
fun updateTimerTabAlarmSound(alarmSound: AlarmSound) {
|
||||||
|
getViewPagerAdapter()?.updateTimerTabAlarmSound(alarmSound)
|
||||||
|
}
|
||||||
|
|
||||||
private fun initFragments() {
|
private fun initFragments() {
|
||||||
view_pager.adapter = ViewPagerAdapter(supportFragmentManager)
|
view_pager.adapter = ViewPagerAdapter(supportFragmentManager)
|
||||||
view_pager.onPageChangeListener {
|
view_pager.onPageChangeListener {
|
||||||
|
@ -11,9 +11,9 @@ import android.widget.RadioGroup
|
|||||||
import com.google.gson.Gson
|
import com.google.gson.Gson
|
||||||
import com.google.gson.reflect.TypeToken
|
import com.google.gson.reflect.TypeToken
|
||||||
import com.simplemobiletools.clock.R
|
import com.simplemobiletools.clock.R
|
||||||
|
import com.simplemobiletools.clock.activities.MainActivity
|
||||||
import com.simplemobiletools.clock.activities.SimpleActivity
|
import com.simplemobiletools.clock.activities.SimpleActivity
|
||||||
import com.simplemobiletools.clock.extensions.config
|
import com.simplemobiletools.clock.extensions.*
|
||||||
import com.simplemobiletools.clock.extensions.getAlarmSounds
|
|
||||||
import com.simplemobiletools.clock.helpers.PICK_AUDIO_FILE_INTENT_ID
|
import com.simplemobiletools.clock.helpers.PICK_AUDIO_FILE_INTENT_ID
|
||||||
import com.simplemobiletools.clock.models.AlarmSound
|
import com.simplemobiletools.clock.models.AlarmSound
|
||||||
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
||||||
@ -143,6 +143,21 @@ class SelectAlarmSoundDialog(val activity: SimpleActivity, val currentUri: Strin
|
|||||||
view.dialog_select_alarm_your_radio.clearCheck()
|
view.dialog_select_alarm_your_radio.clearCheck()
|
||||||
view.dialog_select_alarm_system_radio.check(systemAlarmSounds.firstOrNull()?.id ?: 0)
|
view.dialog_select_alarm_system_radio.check(systemAlarmSounds.firstOrNull()?.id ?: 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val defaultAlarm = AlarmSound(0, activity.getDefaultAlarmTitle(), activity.getDefaultAlarmUri().toString())
|
||||||
|
val defaultTitle = defaultAlarm.title
|
||||||
|
val defaultUri = defaultAlarm.uri
|
||||||
|
if (config.timerSoundUri == alarmSound.uri) {
|
||||||
|
config.timerSoundTitle = defaultTitle
|
||||||
|
config.timerSoundUri = defaultUri
|
||||||
|
(activity as MainActivity).updateTimerTabAlarmSound(defaultAlarm)
|
||||||
|
}
|
||||||
|
|
||||||
|
activity.dbHelper.getAlarmsWithUri(alarmSound.uri).forEach {
|
||||||
|
it.soundTitle = defaultTitle
|
||||||
|
it.soundUri = defaultUri
|
||||||
|
activity.dbHelper.updateAlarm(it)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun dialogConfirmed() {
|
private fun dialogConfirmed() {
|
||||||
|
@ -90,6 +90,8 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
|
|||||||
|
|
||||||
fun getAlarmWithId(id: Int) = getAlarms().firstOrNull { it.id == id }
|
fun getAlarmWithId(id: Int) = getAlarms().firstOrNull { it.id == id }
|
||||||
|
|
||||||
|
fun getAlarmsWithUri(uri: String) = getAlarms().filter { it.soundUri == uri }
|
||||||
|
|
||||||
private fun fillAlarmContentValues(alarm: Alarm): ContentValues {
|
private fun fillAlarmContentValues(alarm: Alarm): ContentValues {
|
||||||
return ContentValues().apply {
|
return ContentValues().apply {
|
||||||
put(COL_TIME_IN_MINUTES, alarm.timeInMinutes)
|
put(COL_TIME_IN_MINUTES, alarm.timeInMinutes)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user