mirror of
https://github.com/SimpleMobileTools/Simple-Clock.git
synced 2025-02-23 15:17:47 +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 com.simplemobiletools.commons.models.AlarmSound
|
||||||
import kotlinx.android.synthetic.main.dialog_edit_alarm.view.*
|
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 view = activity.layoutInflater.inflate(R.layout.dialog_edit_alarm, null)
|
||||||
private val textColor = activity.config.textColor
|
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
|
alarm.label = view.edit_alarm_label.value
|
||||||
|
|
||||||
|
var alarmId = alarm.id
|
||||||
if (alarm.id == 0) {
|
if (alarm.id == 0) {
|
||||||
if (!activity.dbHelper.insertAlarm(alarm)) {
|
alarmId = activity.dbHelper.insertAlarm(alarm)
|
||||||
|
if (alarmId == -1) {
|
||||||
activity.toast(R.string.unknown_error_occurred)
|
activity.toast(R.string.unknown_error_occurred)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -107,7 +109,7 @@ class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val callba
|
|||||||
activity.toast(R.string.unknown_error_occurred)
|
activity.toast(R.string.unknown_error_occurred)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
callback()
|
callback(alarmId)
|
||||||
dismiss()
|
dismiss()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -81,11 +81,11 @@ class AlarmFragment : Fragment(), ToggleAlarmInterface {
|
|||||||
|
|
||||||
private fun openEditAlarm(alarm: Alarm) {
|
private fun openEditAlarm(alarm: Alarm) {
|
||||||
currentEditAlarmDialog = EditAlarmDialog(activity as SimpleActivity, alarm) {
|
currentEditAlarmDialog = EditAlarmDialog(activity as SimpleActivity, alarm) {
|
||||||
|
alarm.id = it
|
||||||
currentEditAlarmDialog = null
|
currentEditAlarmDialog = null
|
||||||
setupAlarms()
|
setupAlarms()
|
||||||
checkAlarmState(alarm)
|
checkAlarmState(alarm)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun alarmToggled(id: Int, isEnabled: Boolean) {
|
override fun alarmToggled(id: Int, isEnabled: Boolean) {
|
||||||
|
@ -58,9 +58,9 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
|
|||||||
insertAlarm(weekEndAlarm, db)
|
insertAlarm(weekEndAlarm, db)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun insertAlarm(alarm: Alarm, db: SQLiteDatabase = mDb): Boolean {
|
fun insertAlarm(alarm: Alarm, db: SQLiteDatabase = mDb): Int {
|
||||||
val values = fillAlarmContentValues(alarm)
|
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 {
|
fun updateAlarm(alarm: Alarm): Boolean {
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.simplemobiletools.clock.models
|
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)
|
var soundUri: String, var label: String)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user