File tree Expand file tree Collapse file tree
app/src/main/java/io/github/sds100/keymapper Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -33,11 +33,7 @@ data class Action(
3333
3434 val multiplier : Int? = null ,
3535 val delayBeforeNextAction : Int? = null ,
36- ) {
37- companion object {
38- const val REPEAT_DELAY_MIN = 0
39- }
40- }
36+ )
4137
4238object ActionEntityMapper {
4339 fun fromEntity (entity : ActionEntity ): Action ? {
@@ -108,7 +104,7 @@ object ActionEntityMapper {
108104 )
109105 }
110106
111- fun toEntity (keyMap : KeyMap ): List <ActionEntity > = keyMap.actionList.mapNotNull { action ->
107+ fun toEntity (keyMap : KeyMap ): List <ActionEntity > = keyMap.actionList.map { action ->
112108 val base = ActionDataEntityMapper .toEntity(action.data)
113109
114110 val extras = mutableListOf<EntityExtra >().apply {
@@ -187,7 +183,7 @@ object ActionEntityMapper {
187183 flags = flags.withFlag(ActionEntity .ACTION_FLAG_HOLD_DOWN )
188184 }
189185
190- return @mapNotNull ActionEntity (
186+ return @map ActionEntity (
191187 type = base.type,
192188 data = base.data,
193189 extras = base.extras.plus(extras),
Original file line number Diff line number Diff line change 11package io.github.sds100.keymapper.mappings.keymaps
22
3+ import android.database.sqlite.SQLiteConstraintException
34import io.github.sds100.keymapper.actions.Action
45import io.github.sds100.keymapper.actions.ActionData
56import io.github.sds100.keymapper.actions.RepeatMode
@@ -851,7 +852,12 @@ class ConfigKeyMapUseCaseController(
851852 val keyMap = keyMap.value.dataOrNull() ? : return
852853
853854 if (keyMap.dbId == null ) {
854- keyMapRepository.insert(KeyMapEntityMapper .toEntity(keyMap, 0 ))
855+ val entity = KeyMapEntityMapper .toEntity(keyMap, 0 )
856+ try {
857+ keyMapRepository.insert(entity)
858+ } catch (e: SQLiteConstraintException ) {
859+ keyMapRepository.update(entity)
860+ }
855861 } else {
856862 keyMapRepository.update(KeyMapEntityMapper .toEntity(keyMap, keyMap.dbId))
857863 }
You can’t perform that action at this time.
0 commit comments