From c25decc777f22542fea1cd671de5d3f7d7c78796 Mon Sep 17 00:00:00 2001 From: Myzel394 <50424412+Myzel394@users.noreply.github.com> Date: Sat, 16 Mar 2024 15:26:38 +0100 Subject: [PATCH] feat: Automatically change interval duration and max duration Signed-off-by: Myzel394 <50424412+Myzel394@users.noreply.github.com> --- .../SettingsScreen/Tiles/IntervalDurationTile.kt | 8 ++++++-- .../ui/components/SettingsScreen/Tiles/MaxDurationTile.kt | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/app/myzel394/alibi/ui/components/SettingsScreen/Tiles/IntervalDurationTile.kt b/app/src/main/java/app/myzel394/alibi/ui/components/SettingsScreen/Tiles/IntervalDurationTile.kt index 09bc86e..edfe06a 100644 --- a/app/src/main/java/app/myzel394/alibi/ui/components/SettingsScreen/Tiles/IntervalDurationTile.kt +++ b/app/src/main/java/app/myzel394/alibi/ui/components/SettingsScreen/Tiles/IntervalDurationTile.kt @@ -2,7 +2,6 @@ package app.myzel394.alibi.ui.components.SettingsScreen.Tiles import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Mic -import androidx.compose.material.icons.filled.Timer import androidx.compose.material3.Button import androidx.compose.material3.ButtonDefaults import androidx.compose.material3.ExperimentalMaterial3Api @@ -10,7 +9,6 @@ import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.collectAsState import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.stringResource @@ -43,6 +41,12 @@ fun IntervalDurationTile( fun updateValue(intervalDuration: Long) { scope.launch { + if (intervalDuration > settings.maxDuration) { + dataStore.updateData { + it.setMaxDuration(intervalDuration) + } + } + dataStore.updateData { it.setIntervalDuration(intervalDuration) } diff --git a/app/src/main/java/app/myzel394/alibi/ui/components/SettingsScreen/Tiles/MaxDurationTile.kt b/app/src/main/java/app/myzel394/alibi/ui/components/SettingsScreen/Tiles/MaxDurationTile.kt index 6319cb6..abf067b 100644 --- a/app/src/main/java/app/myzel394/alibi/ui/components/SettingsScreen/Tiles/MaxDurationTile.kt +++ b/app/src/main/java/app/myzel394/alibi/ui/components/SettingsScreen/Tiles/MaxDurationTile.kt @@ -1,7 +1,6 @@ package app.myzel394.alibi.ui.components.SettingsScreen.Tiles import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.Memory import androidx.compose.material.icons.filled.Timer import androidx.compose.material3.Button import androidx.compose.material3.ButtonDefaults @@ -10,7 +9,6 @@ import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.collectAsState import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.stringResource @@ -42,6 +40,12 @@ fun MaxDurationTile( fun updateValue(maxDuration: Long) { scope.launch { + if (maxDuration < settings.intervalDuration) { + dataStore.updateData { + it.setIntervalDuration(maxDuration) + } + } + dataStore.updateData { it.setMaxDuration(maxDuration) }