fix(ui): make a settings option collapsible in timer settings

This commit is contained in:
Nishant Mishra
2025-12-06 22:23:28 +05:30
parent c7dd860e26
commit 960174a05b

View File

@@ -24,7 +24,9 @@ import android.os.Build
import android.provider.Settings import android.provider.Settings
import android.widget.Toast import android.widget.Toast
import androidx.compose.animation.AnimatedVisibility import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.animateContentSize
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
import androidx.compose.foundation.horizontalScroll import androidx.compose.foundation.horizontalScroll
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
@@ -54,6 +56,7 @@ import androidx.compose.material3.LargeFlexibleTopAppBar
import androidx.compose.material3.ListItem import androidx.compose.material3.ListItem
import androidx.compose.material3.LocalContentColor import androidx.compose.material3.LocalContentColor
import androidx.compose.material3.MaterialTheme.colorScheme import androidx.compose.material3.MaterialTheme.colorScheme
import androidx.compose.material3.MaterialTheme.motionScheme
import androidx.compose.material3.MaterialTheme.typography import androidx.compose.material3.MaterialTheme.typography
import androidx.compose.material3.Scaffold import androidx.compose.material3.Scaffold
import androidx.compose.material3.Slider import androidx.compose.material3.Slider
@@ -77,6 +80,7 @@ import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.text.input.ImeAction
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import org.nsh07.pomodoro.R import org.nsh07.pomodoro.R
@@ -364,7 +368,17 @@ fun TimerSettings(
Icon(painterResource(R.drawable.view_day), null) Icon(painterResource(R.drawable.view_day), null)
}, },
headlineContent = { Text(stringResource(R.string.session_only_progress)) }, headlineContent = { Text(stringResource(R.string.session_only_progress)) },
supportingContent = { Text(stringResource(R.string.session_only_progress_desc)) }, supportingContent = {
var expanded by remember { mutableStateOf(false) }
Text(
stringResource(R.string.session_only_progress_desc),
maxLines = if (expanded) Int.MAX_VALUE else 2,
overflow = TextOverflow.Ellipsis,
modifier = Modifier
.clickable { expanded = !expanded }
.animateContentSize(motionScheme.defaultSpatialSpec())
)
},
trailingContent = { trailingContent = {
Switch( Switch(
checked = settingsState.singleProgressBar, checked = settingsState.singleProgressBar,