mirror of
https://github.com/SimpleMobileTools/Simple-Clock.git
synced 2025-02-23 07:07:43 +01:00
fix #46, properly disable freshly created alarm on delete
This commit is contained in:
parent
616f6caa15
commit
2f42edd2b1
@ -16,7 +16,7 @@ import com.simplemobiletools.commons.helpers.ALARM_SOUND_TYPE_ALARM
|
||||
import com.simplemobiletools.commons.models.AlarmSound
|
||||
import kotlinx.android.synthetic.main.dialog_edit_alarm.view.*
|
||||
|
||||
class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val callback: () -> Unit) {
|
||||
class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val callback: (alarmId: Int) -> Unit) {
|
||||
private val view = activity.layoutInflater.inflate(R.layout.dialog_edit_alarm, null)
|
||||
private val textColor = activity.config.textColor
|
||||
|
||||
@ -98,8 +98,10 @@ class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val callba
|
||||
|
||||
alarm.label = view.edit_alarm_label.value
|
||||
|
||||
var alarmId = alarm.id
|
||||
if (alarm.id == 0) {
|
||||
if (!activity.dbHelper.insertAlarm(alarm)) {
|
||||
alarmId = activity.dbHelper.insertAlarm(alarm)
|
||||
if (alarmId == -1) {
|
||||
activity.toast(R.string.unknown_error_occurred)
|
||||
}
|
||||
} else {
|
||||
@ -107,7 +109,7 @@ class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val callba
|
||||
activity.toast(R.string.unknown_error_occurred)
|
||||
}
|
||||
}
|
||||
callback()
|
||||
callback(alarmId)
|
||||
dismiss()
|
||||
}
|
||||
}
|
||||
|
@ -81,11 +81,11 @@ class AlarmFragment : Fragment(), ToggleAlarmInterface {
|
||||
|
||||
private fun openEditAlarm(alarm: Alarm) {
|
||||
currentEditAlarmDialog = EditAlarmDialog(activity as SimpleActivity, alarm) {
|
||||
alarm.id = it
|
||||
currentEditAlarmDialog = null
|
||||
setupAlarms()
|
||||
checkAlarmState(alarm)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
override fun alarmToggled(id: Int, isEnabled: Boolean) {
|
||||
|
@ -58,9 +58,9 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
|
||||
insertAlarm(weekEndAlarm, db)
|
||||
}
|
||||
|
||||
fun insertAlarm(alarm: Alarm, db: SQLiteDatabase = mDb): Boolean {
|
||||
fun insertAlarm(alarm: Alarm, db: SQLiteDatabase = mDb): Int {
|
||||
val values = fillAlarmContentValues(alarm)
|
||||
return db.insert(ALARMS_TABLE_NAME, null, values) != -1L
|
||||
return db.insert(ALARMS_TABLE_NAME, null, values).toInt()
|
||||
}
|
||||
|
||||
fun updateAlarm(alarm: Alarm): Boolean {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.simplemobiletools.clock.models
|
||||
|
||||
data class Alarm(val id: Int, var timeInMinutes: Int, var days: Int, var isEnabled: Boolean, var vibrate: Boolean, var soundTitle: String,
|
||||
data class Alarm(var id: Int, var timeInMinutes: Int, var days: Int, var isEnabled: Boolean, var vibrate: Boolean, var soundTitle: String,
|
||||
var soundUri: String, var label: String)
|
||||
|
Loading…
x
Reference in New Issue
Block a user