From e32a78265343a42530aa2bbea5f518f91109c182 Mon Sep 17 00:00:00 2001 From: AKolenda Date: Tue, 18 Aug 2026 14:52:14 -0600 Subject: [PATCH 01/11] Fix project-name task filtering --- .../ui/components/ProjectTaskDropdownMenu.kt | 50 +++++++++----- .../components/ProjectTaskDropdownMenuTest.kt | 65 +++++++++++++++++++ 2 files changed, 99 insertions(+), 16 deletions(-) create mode 100644 app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenuTest.kt diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenu.kt b/app/src/main/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenu.kt index 82847a6..ea49bbb 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenu.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenu.kt @@ -108,6 +108,35 @@ fun ProjectTaskDropdown( private val OutlinedTextFieldDefaultsShape = RoundedCornerShape(4.dp) +internal data class ProjectTaskSearchResults(val projects: List, val tasksByProject: Map>) + +internal fun filterProjectsAndTasks(projects: List, tasks: List, query: String): ProjectTaskSearchResults { + val normalizedQuery = query.trim() + if (normalizedQuery.isBlank()) { + return ProjectTaskSearchResults(projects, tasks.groupBy { it.projectId }) + } + + val directlyMatchingProjectIds = projects + .asSequence() + .filter { it.name.contains(normalizedQuery, ignoreCase = true) } + .map { it.id } + .toSet() + val filteredTasks = tasks.filter { task -> + task.projectId in directlyMatchingProjectIds || + task.name.contains(normalizedQuery, ignoreCase = true) + } + val matchingTaskProjectIds = filteredTasks + .asSequence() + .filter { it.name.contains(normalizedQuery, ignoreCase = true) } + .map { it.projectId } + .toSet() + val filteredProjects = projects.filter { project -> + project.id in directlyMatchingProjectIds || project.id in matchingTaskProjectIds + } + + return ProjectTaskSearchResults(filteredProjects, filteredTasks.groupBy { it.projectId }) +} + @Composable private fun ProjectTaskPickerDialog( projects: List, @@ -122,20 +151,9 @@ private fun ProjectTaskPickerDialog( onCreateTask: ((String, String) -> Unit)?, ) { val normalizedQuery = searchQuery.trim() - val filteredTasks = remember(normalizedQuery, tasks) { - tasks.filter { normalizedQuery.isBlank() || it.name.contains(normalizedQuery, true) } - } - val matchingTaskProjectIds = remember(filteredTasks, normalizedQuery) { - if (normalizedQuery.isBlank()) emptySet() else filteredTasks.map { it.projectId }.toSet() - } - val filteredProjects = remember(normalizedQuery, projects, matchingTaskProjectIds) { - projects.filter { - normalizedQuery.isBlank() || - it.name.contains(normalizedQuery, true) || - it.id in matchingTaskProjectIds - } + val searchResults = remember(normalizedQuery, projects, tasks) { + filterProjectsAndTasks(projects, tasks, normalizedQuery) } - val filteredTasksByProject = remember(filteredTasks) { filteredTasks.groupBy { it.projectId } } Dialog(onDismissRequest = onClose) { Surface( modifier = Modifier @@ -176,7 +194,7 @@ private fun ProjectTaskPickerDialog( }, ) } - filteredProjects.forEach { project -> + searchResults.projects.forEach { project -> item(key = "project_${project.id}") { DropdownMenuItem( text = { @@ -200,7 +218,7 @@ private fun ProjectTaskPickerDialog( ) } - filteredTasksByProject[project.id].orEmpty().forEach { task -> + searchResults.tasksByProject[project.id].orEmpty().forEach { task -> item(key = "task_${task.id}") { DropdownMenuItem( text = { @@ -245,7 +263,7 @@ private fun ProjectTaskPickerDialog( ) } } - if (searchQuery.isNotBlank() && filteredProjects.isEmpty()) { + if (searchQuery.isNotBlank() && searchResults.projects.isEmpty()) { item { DropdownMenuItem( text = { diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenuTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenuTest.kt new file mode 100644 index 0000000..2265077 --- /dev/null +++ b/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenuTest.kt @@ -0,0 +1,65 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.ui.components + +import dev.tricked.solidverdant.data.model.Project +import dev.tricked.solidverdant.data.model.Task +import org.junit.Assert.assertEquals +import org.junit.Test + +class ProjectTaskDropdownMenuTest { + private val matchingProject = project("project-1", "M5337RW - 62201") + private val otherProject = project("project-2", "Internal work") + private val turningTask = task("task-1", "Turning - Running", matchingProject.id) + private val setupTask = task("task-2", "Setup and F/O", matchingProject.id) + private val otherTask = task("task-3", "Planning", otherProject.id) + private val projects = listOf(matchingProject, otherProject) + private val tasks = listOf(turningTask, setupTask, otherTask) + + @Test + fun `project name match includes every task in that project`() { + val results = filterProjectsAndTasks(projects, tasks, " m5337 ") + + assertEquals(listOf(matchingProject), results.projects) + assertEquals(listOf(turningTask, setupTask), results.tasksByProject[matchingProject.id]) + } + + @Test + fun `task name match includes only matching tasks and their project`() { + val results = filterProjectsAndTasks(projects, tasks, "TURNING - RUNNING") + + assertEquals(listOf(matchingProject), results.projects) + assertEquals(listOf(turningTask), results.tasksByProject[matchingProject.id]) + } + + @Test + fun `blank query preserves all projects and tasks`() { + val results = filterProjectsAndTasks(projects, tasks, " ") + + assertEquals(projects, results.projects) + assertEquals(listOf(turningTask, setupTask), results.tasksByProject[matchingProject.id]) + assertEquals(listOf(otherTask), results.tasksByProject[otherProject.id]) + } + + @Test + fun `unmatched query returns no projects or tasks`() { + val results = filterProjectsAndTasks(projects, tasks, "not present") + + assertEquals(emptyList(), results.projects) + assertEquals(emptyMap>(), results.tasksByProject) + } + + private fun project(id: String, name: String) = Project(id = id, name = name, color = "#000000") + + private fun task(id: String, name: String, projectId: String) = Task( + id = id, + name = name, + projectId = projectId, + createdAt = "2026-08-18T00:00:00Z", + updatedAt = "2026-08-18T00:00:00Z", + ) +} From b30708421fbf3e1a13481fe35fe2848ec443cc5e Mon Sep 17 00:00:00 2001 From: AKolenda Date: Tue, 18 Aug 2026 15:48:08 -0600 Subject: [PATCH 02/11] Split project and task search pickers --- .github/screenshots/readme/edit-entry.png | Bin 97021 -> 95911 bytes .github/screenshots/readme/track.png | Bin 100737 -> 93474 bytes .../dev/tricked/solidverdant/e2e/TestTags.kt | 4 + .../flows/CalendarMetadataCatalogueE2eTest.kt | 6 +- .../solidverdant/e2e/robots/TrackRobot.kt | 10 +- .../ui/components/EditTimeEntryTestTags.kt | 12 +- .../ui/components/ProjectTaskDropdownMenu.kt | 504 +++++++++++------- .../ui/templates/TemplateEditorSheet.kt | 14 +- .../tricked/solidverdant/ui/theme/Dimens.kt | 2 + .../ui/tile/ProjectSelectionActivity.kt | 14 +- .../ui/tracking/TrackingScreen.kt | 49 +- .../ui/tracking/TrackingTestTags.kt | 1 + app/src/main/res/values-ja/strings.xml | 9 + app/src/main/res/values-nl/strings.xml | 9 + app/src/main/res/values/strings.xml | 9 + .../ProjectTaskDropdownInteractionTest.kt | 109 ++++ .../components/ProjectTaskDropdownMenuTest.kt | 38 +- 17 files changed, 514 insertions(+), 276 deletions(-) create mode 100644 app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownInteractionTest.kt diff --git a/.github/screenshots/readme/edit-entry.png b/.github/screenshots/readme/edit-entry.png index f1c16a01c1d69a25c7e50fa94950407e5eb414fc..4382885b80de353ea53cd4982c4285ca6c812d71 100644 GIT binary patch literal 95911 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
  • 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 literal 97021 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

    *b}blD#E`FCnEE2U!uckdg+dXa`$ew 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μ|H{wUl(K`O?1P!x*v2;YoX??} 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

    )N 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%0AaJom7zpN?nz2aH|y`X^gD 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, tasks: List, - displayText: String, + selectedProjectId: String?, + selectedTaskId: String?, onSelectionChanged: (projectId: String?, taskId: String?) -> Unit, enabled: Boolean = true, showProjectColors: Boolean = false, rounded: Boolean = false, - selectedProjectId: String? = null, onCreateProject: ((String) -> Unit)? = null, onCreateTask: ((String, String) -> Unit)? = null, ) { - var expanded by remember { mutableStateOf(false) } - var searchQuery by remember { mutableStateOf("") } - val close = { - expanded = false - searchQuery = "" + var activePicker by rememberSaveable { mutableStateOf(null) } + var projectQuery by rememberSaveable { mutableStateOf("") } + var taskQuery by rememberSaveable { mutableStateOf("") } + + val selectedProject = remember(projects, selectedProjectId) { + projects.firstOrNull { it.id == selectedProjectId } } + val tasksByProject = remember(tasks) { groupTasksByProject(tasks) } + val projectTasks = remember(tasksByProject, selectedProjectId) { + selectedProjectId?.let { tasksByProject[it] }.orEmpty() + } + val selectedTask = remember(projectTasks, selectedTaskId) { + projectTasks.firstOrNull { it.id == selectedTaskId } + } + val fieldShape = if (rounded) MaterialTheme.shapes.medium else MaterialTheme.shapes.small - ExposedDropdownMenuBox( - expanded = expanded, - onExpandedChange = { - if (enabled) { - expanded = it - if (!it) searchQuery = "" - } - }, + Column( + modifier = Modifier.fillMaxWidth(), + verticalArrangement = Arrangement.spacedBy(Dimens.Space12), ) { - OutlinedTextField( - value = displayText, - onValueChange = {}, - readOnly = true, - label = { Text(stringResource(R.string.project_task)) }, - trailingIcon = { ExposedDropdownMenuDefaults.TrailingIcon(expanded) }, - modifier = Modifier - .fillMaxWidth() - .testTag(EditTimeEntryTestTags.PROJECT_TASK_SELECTOR) - .menuAnchor(ExposedDropdownMenuAnchorType.PrimaryNotEditable, enabled), + SearchableSelectorField( + value = selectedProject?.name ?: stringResource(R.string.no_project), + label = stringResource(R.string.project), + expanded = activePicker == PickerKind.PROJECT, + onExpandedChange = { expanded -> activePicker = PickerKind.PROJECT.takeIf { expanded } }, enabled = enabled, - shape = if (rounded) RoundedCornerShape(8.dp) else OutlinedTextFieldDefaultsShape, + shape = fieldShape, + testTag = EditTimeEntryTestTags.PROJECT_SELECTOR, + ) + SearchableSelectorField( + value = when { + selectedProject == null -> stringResource(R.string.select_project_first) + selectedTask == null -> stringResource(R.string.no_task) + else -> selectedTask.name + }, + label = stringResource(R.string.task), + expanded = activePicker == PickerKind.TASK, + onExpandedChange = { expanded -> activePicker = PickerKind.TASK.takeIf { expanded } }, + enabled = enabled && selectedProject != null, + shape = fieldShape, + testTag = EditTimeEntryTestTags.TASK_SELECTOR, ) } - if (expanded) { - ProjectTaskPickerDialog( + when (activePicker) { + PickerKind.PROJECT -> ProjectPickerDialog( projects = projects, - tasks = tasks, - searchQuery = searchQuery, - onSearchQueryChange = { searchQuery = it }, - onSelectionChanged = onSelectionChanged, - onClose = close, - showProjectColors = showProjectColors, selectedProjectId = selectedProjectId, + searchQuery = projectQuery, + onSearchQueryChange = { projectQuery = it }, + onSelect = { projectId -> + val retainedTaskId = selectedTaskId.takeIf { projectId == selectedProjectId } + onSelectionChanged(projectId, retainedTaskId) + activePicker = null + projectQuery = "" + }, + onClose = { + activePicker = null + projectQuery = "" + }, + showProjectColors = showProjectColors, onCreateProject = onCreateProject, - onCreateTask = onCreateTask, ) - } -} - -private val OutlinedTextFieldDefaultsShape = RoundedCornerShape(4.dp) -internal data class ProjectTaskSearchResults(val projects: List, val tasksByProject: Map>) + PickerKind.TASK -> selectedProject?.id?.let { projectId -> + TaskPickerDialog( + tasks = projectTasks, + projectId = projectId, + selectedTaskId = selectedTaskId, + searchQuery = taskQuery, + onSearchQueryChange = { taskQuery = it }, + onSelect = { taskId -> + onSelectionChanged(projectId, taskId) + activePicker = null + taskQuery = "" + }, + onClose = { + activePicker = null + taskQuery = "" + }, + onCreateTask = onCreateTask, + ) + } -internal fun filterProjectsAndTasks(projects: List, tasks: List, query: String): ProjectTaskSearchResults { - val normalizedQuery = query.trim() - if (normalizedQuery.isBlank()) { - return ProjectTaskSearchResults(projects, tasks.groupBy { it.projectId }) + null -> Unit } +} - val directlyMatchingProjectIds = projects - .asSequence() - .filter { it.name.contains(normalizedQuery, ignoreCase = true) } - .map { it.id } - .toSet() - val filteredTasks = tasks.filter { task -> - task.projectId in directlyMatchingProjectIds || - task.name.contains(normalizedQuery, ignoreCase = true) - } - val matchingTaskProjectIds = filteredTasks - .asSequence() - .filter { it.name.contains(normalizedQuery, ignoreCase = true) } - .map { it.projectId } - .toSet() - val filteredProjects = projects.filter { project -> - project.id in directlyMatchingProjectIds || project.id in matchingTaskProjectIds +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun SearchableSelectorField( + value: String, + label: String, + expanded: Boolean, + onExpandedChange: (Boolean) -> Unit, + enabled: Boolean, + shape: androidx.compose.ui.graphics.Shape, + testTag: String, +) { + ExposedDropdownMenuBox(expanded = expanded, onExpandedChange = { if (enabled) onExpandedChange(it) }) { + OutlinedTextField( + value = value, + onValueChange = {}, + readOnly = true, + label = { Text(label) }, + trailingIcon = { ExposedDropdownMenuDefaults.TrailingIcon(expanded) }, + modifier = Modifier + .fillMaxWidth() + .testTag(testTag) + .menuAnchor(ExposedDropdownMenuAnchorType.PrimaryNotEditable, enabled), + enabled = enabled, + singleLine = true, + shape = shape, + ) } +} - return ProjectTaskSearchResults(filteredProjects, filteredTasks.groupBy { it.projectId }) +internal fun filterProjects(projects: List, query: String): List { + val normalizedQuery = query.trim() + if (normalizedQuery.isBlank()) return projects + return projects.filter { it.name.contains(normalizedQuery, ignoreCase = true) } } +internal fun filterTasks(tasks: List, query: String): List { + val normalizedQuery = query.trim() + if (normalizedQuery.isBlank()) return tasks + return tasks.filter { it.name.contains(normalizedQuery, ignoreCase = true) } +} + +internal fun groupTasksByProject(tasks: List): Map> = tasks.groupBy { it.projectId } + @Composable -private fun ProjectTaskPickerDialog( +private fun ProjectPickerDialog( projects: List, - tasks: List, + selectedProjectId: String?, searchQuery: String, onSearchQueryChange: (String) -> Unit, - onSelectionChanged: (projectId: String?, taskId: String?) -> Unit, + onSelect: (String?) -> Unit, onClose: () -> Unit, showProjectColors: Boolean, - selectedProjectId: String?, onCreateProject: ((String) -> Unit)?, +) { + val normalizedQuery = searchQuery.trim() + val filteredProjects = remember(projects, normalizedQuery) { filterProjects(projects, normalizedQuery) } + PickerDialog( + title = stringResource(R.string.select_project), + searchPlaceholder = stringResource(R.string.search_projects), + searchQuery = searchQuery, + onSearchQueryChange = onSearchQueryChange, + onClose = onClose, + listTestTag = EditTimeEntryTestTags.PROJECT_LIST, + searchTestTag = EditTimeEntryTestTags.PROJECT_SEARCH, + ) { + item(key = "no_project") { + PickerItem( + text = stringResource(R.string.no_project), + selected = selectedProjectId == null, + onClick = { onSelect(null) }, + ) + } + items(filteredProjects, key = { "project_${it.id}" }) { project -> + PickerItem( + text = project.name, + selected = project.id == selectedProjectId, + onClick = { onSelect(project.id) }, + leadingContent = if (showProjectColors) { + { + Box( + modifier = Modifier + .size(Dimens.Space12) + .clip(CircleShape) + .background(Color(project.color.toColorInt())), + ) + } + } else { + null + }, + ) + } + if (filteredProjects.isEmpty()) { + emptyResultItem(searchQuery, R.string.no_projects_available) + } + if (normalizedQuery.isNotBlank() && onCreateProject != null) { + item(key = "create_project") { + DropdownMenuItem( + text = { Text(stringResource(R.string.create_project_named, normalizedQuery)) }, + onClick = { + onCreateProject(normalizedQuery) + onClose() + }, + modifier = Modifier.testTag(EditTimeEntryTestTags.CREATE_PROJECT), + ) + } + } + } +} + +@Composable +private fun TaskPickerDialog( + tasks: List, + projectId: String, + selectedTaskId: String?, + searchQuery: String, + onSearchQueryChange: (String) -> Unit, + onSelect: (String?) -> Unit, + onClose: () -> Unit, onCreateTask: ((String, String) -> Unit)?, ) { val normalizedQuery = searchQuery.trim() - val searchResults = remember(normalizedQuery, projects, tasks) { - filterProjectsAndTasks(projects, tasks, normalizedQuery) + val filteredTasks = remember(tasks, normalizedQuery) { filterTasks(tasks, normalizedQuery) } + PickerDialog( + title = stringResource(R.string.select_task), + searchPlaceholder = stringResource(R.string.search_tasks), + searchQuery = searchQuery, + onSearchQueryChange = onSearchQueryChange, + onClose = onClose, + listTestTag = EditTimeEntryTestTags.TASK_LIST, + searchTestTag = EditTimeEntryTestTags.TASK_SEARCH, + ) { + item(key = "no_task") { + PickerItem( + text = stringResource(R.string.no_task), + selected = selectedTaskId == null, + onClick = { onSelect(null) }, + ) + } + items(filteredTasks, key = { "task_${it.id}" }) { task -> + PickerItem( + text = task.name, + selected = task.id == selectedTaskId, + onClick = { onSelect(task.id) }, + ) + } + if (filteredTasks.isEmpty()) { + emptyResultItem(searchQuery, R.string.no_tasks_available) + } + if (normalizedQuery.isNotBlank() && onCreateTask != null) { + item(key = "create_task") { + DropdownMenuItem( + text = { Text(stringResource(R.string.create_task_named, normalizedQuery)) }, + onClick = { + onCreateTask(normalizedQuery, projectId) + onClose() + }, + modifier = Modifier.testTag(EditTimeEntryTestTags.CREATE_TASK), + ) + } + } } - Dialog(onDismissRequest = onClose) { - Surface( - modifier = Modifier - .fillMaxWidth() - .heightIn(max = 640.dp), - shape = RoundedCornerShape(24.dp), - tonalElevation = 6.dp, +} + +private fun LazyListScope.emptyResultItem(searchQuery: String, emptyMessage: Int) { + item(key = "empty_result") { + Text( + text = stringResource(if (searchQuery.isBlank()) emptyMessage else R.string.no_results_found), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.padding(horizontal = Dimens.Space24, vertical = Dimens.Space16), + ) + } +} + +@Composable +private fun PickerItem(text: String, selected: Boolean, onClick: () -> Unit, leadingContent: (@Composable () -> Unit)? = null) { + DropdownMenuItem( + text = { Text(text, style = MaterialTheme.typography.bodyLarge) }, + onClick = onClick, + leadingIcon = leadingContent, + trailingIcon = if (selected) { + { Icon(Icons.Default.Check, contentDescription = null) } + } else { + null + }, + ) +} + +@Composable +private fun PickerDialog( + title: String, + searchPlaceholder: String, + searchQuery: String, + onSearchQueryChange: (String) -> Unit, + onClose: () -> Unit, + listTestTag: String, + searchTestTag: String, + content: LazyListScope.() -> Unit, +) { + Dialog( + onDismissRequest = onClose, + properties = DialogProperties(usePlatformDefaultWidth = false), + ) { + Box( + modifier = Modifier.fillMaxWidth().padding(Dimens.Space16), + contentAlignment = Alignment.Center, ) { - androidx.compose.foundation.lazy.LazyColumn( - modifier = Modifier.padding(vertical = 12.dp).testTag(EditTimeEntryTestTags.PROJECT_TASK_LIST), + Surface( + modifier = Modifier.fillMaxWidth().widthIn(max = Dimens.PickerMaxWidth).heightIn(max = Dimens.PickerMaxHeight), + shape = MaterialTheme.shapes.extraLarge, + tonalElevation = Dimens.Space8, ) { - item { - Text( - text = stringResource(R.string.project_task), - style = MaterialTheme.typography.titleLarge, - modifier = Modifier.padding(horizontal = 20.dp, vertical = 8.dp), - ) - } - item { + Column(modifier = Modifier.fillMaxWidth()) { + Row( + modifier = Modifier.fillMaxWidth().padding(start = Dimens.Space24, end = Dimens.Space8, top = Dimens.Space8), + verticalAlignment = Alignment.CenterVertically, + ) { + Text( + text = title, + style = MaterialTheme.typography.titleLarge, + modifier = Modifier.weight(1f), + ) + IconButton(onClick = onClose, modifier = Modifier.size(Dimens.MinTouchTarget)) { + Icon(Icons.Default.Close, contentDescription = stringResource(R.string.close)) + } + } OutlinedTextField( value = searchQuery, onValueChange = onSearchQueryChange, - placeholder = { Text(stringResource(R.string.search_placeholder)) }, + placeholder = { Text(searchPlaceholder) }, + leadingIcon = { Icon(Icons.Default.Search, contentDescription = null) }, + trailingIcon = if (searchQuery.isNotEmpty()) { + { + IconButton(onClick = { onSearchQueryChange("") }) { + Icon(Icons.Default.Close, contentDescription = stringResource(R.string.clear_search)) + } + } + } else { + null + }, modifier = Modifier .fillMaxWidth() - .padding(horizontal = 16.dp, vertical = 8.dp) - .testTag(EditTimeEntryTestTags.PROJECT_TASK_SEARCH), + .padding(horizontal = Dimens.Space16, vertical = Dimens.Space8) + .testTag(searchTestTag), singleLine = true, - shape = RoundedCornerShape(12.dp), + shape = MaterialTheme.shapes.medium, ) - } - item { - DropdownMenuItem( - text = { Text(stringResource(R.string.no_project)) }, - onClick = { - onSelectionChanged(null, null) - onClose() - }, + LazyColumn( + modifier = Modifier.fillMaxWidth().weight(1f, fill = false).testTag(listTestTag), + content = content, ) - } - searchResults.projects.forEach { project -> - item(key = "project_${project.id}") { - DropdownMenuItem( - text = { - Row(verticalAlignment = Alignment.CenterVertically) { - if (showProjectColors) { - Box( - modifier = Modifier - .size(12.dp) - .clip(CircleShape) - .background(Color(project.color.toColorInt())), - ) - Spacer(Modifier.width(8.dp)) - } - Text(project.name, style = MaterialTheme.typography.bodyLarge) - } - }, - onClick = { - onSelectionChanged(project.id, null) - onClose() - }, - ) - } - - searchResults.tasksByProject[project.id].orEmpty().forEach { task -> - item(key = "task_${task.id}") { - DropdownMenuItem( - text = { - Row { - Spacer(Modifier.width(24.dp)) - Text( - task.name, - style = MaterialTheme.typography.bodyMedium, - color = MaterialTheme.colorScheme.onSurfaceVariant, - ) - } - }, - onClick = { - onSelectionChanged(project.id, task.id) - onClose() - }, - ) - } - } - } - if (normalizedQuery.isNotBlank() && onCreateProject != null) { - item { - DropdownMenuItem( - text = { Text(stringResource(R.string.create_project_named, normalizedQuery)) }, - onClick = { - onCreateProject(normalizedQuery) - onClose() - }, - modifier = Modifier.testTag(EditTimeEntryTestTags.CREATE_PROJECT), - ) - } - } - if (normalizedQuery.isNotBlank() && selectedProjectId != null && onCreateTask != null) { - item { - DropdownMenuItem( - text = { Text(stringResource(R.string.create_task_named, normalizedQuery)) }, - onClick = { - onCreateTask(normalizedQuery, selectedProjectId) - onClose() - }, - modifier = Modifier.testTag(EditTimeEntryTestTags.CREATE_TASK), - ) - } - } - if (searchQuery.isNotBlank() && searchResults.projects.isEmpty()) { - item { - DropdownMenuItem( - text = { - Text( - stringResource(R.string.no_results_found), - style = MaterialTheme.typography.bodyMedium, - color = MaterialTheme.colorScheme.onSurfaceVariant, - ) - }, - onClick = {}, - ) - } + Spacer(Modifier.size(Dimens.Space8)) } } } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/templates/TemplateEditorSheet.kt b/app/src/main/java/dev/tricked/solidverdant/ui/templates/TemplateEditorSheet.kt index b8f67ca..cf28f11 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/templates/TemplateEditorSheet.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/templates/TemplateEditorSheet.kt @@ -77,17 +77,6 @@ fun TemplateEditorSheet( val sheetState = rememberModalBottomSheetState(skipPartiallyExpanded = true) - val displayText = run { - val projectName = projectId?.let { id -> projects.firstOrNull { it.id == id }?.name } - val taskName = taskId?.let { id -> tasks.firstOrNull { it.id == id }?.name } - when { - projectId == null -> stringResource(R.string.templates_no_project) - projectName != null && taskName != null -> "$projectName - $taskName" - projectName != null -> projectName - else -> stringResource(R.string.templates_no_project) - } - } - val canSave = name.isNotBlank() || projectId != null || description.isNotBlank() || @@ -133,7 +122,8 @@ fun TemplateEditorSheet( ProjectTaskDropdown( projects = projects.filterNot { it.isArchived }, tasks = tasks.filterNot { it.isDone }, - displayText = displayText, + selectedProjectId = projectId, + selectedTaskId = taskId, onSelectionChanged = { newProjectId, newTaskId -> projectId = newProjectId taskId = newTaskId diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/theme/Dimens.kt b/app/src/main/java/dev/tricked/solidverdant/ui/theme/Dimens.kt index 2523f6b..0997850 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/theme/Dimens.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/theme/Dimens.kt @@ -58,4 +58,6 @@ object Dimens { val ControlHeightLarge = 64.dp val IconMedium = 24.dp val NarrowCalendarWidth = 600.dp + val PickerMaxWidth = 560.dp + val PickerMaxHeight = 640.dp } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tile/ProjectSelectionActivity.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tile/ProjectSelectionActivity.kt index 09d8508..4b9b216 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tile/ProjectSelectionActivity.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tile/ProjectSelectionActivity.kt @@ -187,13 +187,10 @@ fun StartTrackingForm( var selection by remember { mutableStateOf(ProjectTaskSelection.NoProject) } var description by remember { mutableStateOf("") } - val displayText = when (selection) { - is ProjectTaskSelection.NoProject -> stringResource(R.string.no_project) - is ProjectTaskSelection.ProjectOnly -> (selection as ProjectTaskSelection.ProjectOnly).project.name - is ProjectTaskSelection.ProjectWithTask -> { - val sel = selection as ProjectTaskSelection.ProjectWithTask - "${sel.project.name} - ${sel.task.name}" - } + val selectedIds = when (val current = selection) { + is ProjectTaskSelection.NoProject -> null to null + is ProjectTaskSelection.ProjectOnly -> current.project.id to null + is ProjectTaskSelection.ProjectWithTask -> current.project.id to current.task.id } Text( @@ -206,7 +203,8 @@ fun StartTrackingForm( ProjectTaskDropdown( projects = projects, tasks = tasks, - displayText = displayText, + selectedProjectId = selectedIds.first, + selectedTaskId = selectedIds.second, onSelectionChanged = { projectId, taskId -> val project = projects.find { it.id == projectId } val task = tasks.find { it.id == taskId } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt index 62d80e5..213ccf8 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt @@ -232,15 +232,6 @@ import java.time.format.FormatStyle import java.time.format.TextStyle import java.util.Locale -/** - * Represents a selection of project and/or task - */ -sealed class ProjectTaskSelection { - object NoProject : ProjectTaskSelection() - data class ProjectOnly(val project: Project) : ProjectTaskSelection() - data class ProjectWithTask(val project: Project, val task: Task) : ProjectTaskSelection() -} - /** * Tracking screen displaying current time tracking state and history */ @@ -2357,10 +2348,7 @@ private fun DescriptionFieldWithSuggestions( } } -/** - * Combined Project/Task dropdown selector - */ -@OptIn(ExperimentalMaterial3Api::class) +/** Separately searchable project and task selectors shared by Track entry forms. */ @Composable internal fun ProjectTaskDropdown( selectedProjectId: String?, @@ -2372,46 +2360,15 @@ internal fun ProjectTaskDropdown( onCreateProject: ((String) -> Unit)? = null, onCreateTask: ((String, String) -> Unit)? = null, ) { - // Determine current selection - val selection = remember(selectedProjectId, selectedTaskId, projects, tasks) { - when { - selectedProjectId == null -> ProjectTaskSelection.NoProject - selectedTaskId == null -> { - projects.find { it.id == selectedProjectId }?.let { - ProjectTaskSelection.ProjectOnly(it) - } ?: ProjectTaskSelection.NoProject - } - - else -> { - val project = projects.find { it.id == selectedProjectId } - val task = tasks.find { it.id == selectedTaskId } - if (project != null && task != null) { - ProjectTaskSelection.ProjectWithTask(project, task) - } else if (project != null) { - ProjectTaskSelection.ProjectOnly(project) - } else { - ProjectTaskSelection.NoProject - } - } - } - } - - // Build display text - val displayText = when (selection) { - is ProjectTaskSelection.NoProject -> stringResource(R.string.no_project) - is ProjectTaskSelection.ProjectOnly -> selection.project.name - is ProjectTaskSelection.ProjectWithTask -> "${selection.project.name} - ${selection.task.name}" - } - SharedProjectTaskDropdown( projects = projects, tasks = tasks, - displayText = displayText, + selectedProjectId = selectedProjectId, + selectedTaskId = selectedTaskId, onSelectionChanged = onSelectionChanged, enabled = enabled, showProjectColors = true, rounded = true, - selectedProjectId = selectedProjectId, onCreateProject = onCreateProject, onCreateTask = onCreateTask, ) diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt index 378bc4e..c204e1d 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt @@ -29,6 +29,7 @@ object TrackingTestTags { const val CONTINUE_BUTTON = "track_continue_last" const val SHEET = dev.tricked.solidverdant.ui.components.EditTimeEntryTestTags.SHEET const val SHEET_PROJECT_TASK_SELECTOR = dev.tricked.solidverdant.ui.components.EditTimeEntryTestTags.PROJECT_TASK_SELECTOR + const val SHEET_TASK_SELECTOR = dev.tricked.solidverdant.ui.components.EditTimeEntryTestTags.TASK_SELECTOR const val SHEET_START_TIME = dev.tricked.solidverdant.ui.components.EditTimeEntryTestTags.START_TIME const val SHEET_END_TIME = dev.tricked.solidverdant.ui.components.EditTimeEntryTestTags.END_TIME const val SHEET_DESCRIPTION_FIELD = "track_sheet_description" diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 802fcba..ff6908c 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -152,10 +152,19 @@ エラー: %1$s 再試行 閉じる + 検索をクリア 時間追跡を開始 プロジェクト / タスク 検索… プロジェクトなし + タスクなし + プロジェクトを選択 + タスクを選択 + 先にプロジェクトを選択してください + プロジェクトを検索… + タスクを検索… + 利用可能なプロジェクトはありません + このプロジェクトに利用可能なタスクはありません クライアントなし 説明(任意) 結果が見つかりません diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index fb6dcf7..47f8702 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -162,10 +162,19 @@ Fout: %1$s Opnieuw Proberen Sluiten + Zoekopdracht wissen Tijdregistratie Starten Project / Taak Zoeken… Geen Project + Geen taak + Project selecteren + Taak selecteren + Selecteer eerst een project + Projecten zoeken… + Taken zoeken… + Geen projecten beschikbaar + Geen taken beschikbaar voor dit project Geen klant Beschrijving (Optioneel) Geen resultaten gevonden diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index fce0150..ab74fb2 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -164,6 +164,7 @@ Error: %1$s Retry Close + Clear search Start Time Tracking Project / Task Search… @@ -171,6 +172,14 @@ Needs categorization Clear filters No Project + No task + Select project + Select task + Select a project first + Search projects… + Search tasks… + No projects available + No tasks available for this project No client Description (Optional) No results found diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownInteractionTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownInteractionTest.kt new file mode 100644 index 0000000..3fe36d9 --- /dev/null +++ b/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownInteractionTest.kt @@ -0,0 +1,109 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.ui.components + +import androidx.compose.material3.MaterialTheme +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.test.assertIsEnabled +import androidx.compose.ui.test.assertIsNotEnabled +import androidx.compose.ui.test.assertTextContains +import androidx.compose.ui.test.junit4.v2.createComposeRule +import androidx.compose.ui.test.onNodeWithTag +import androidx.compose.ui.test.onNodeWithText +import androidx.compose.ui.test.performClick +import androidx.compose.ui.test.performTextInput +import dev.tricked.solidverdant.data.model.Project +import dev.tricked.solidverdant.data.model.Task +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner +import org.robolectric.annotation.Config + +@RunWith(RobolectricTestRunner::class) +@Config(sdk = [34]) +class ProjectTaskDropdownInteractionTest { + + @get:Rule + val composeRule = createComposeRule() + + private val machining = Project(id = "p1", name = "Machining", color = "#336699") + private val internal = Project(id = "p2", name = "Internal work", color = "#663399") + private val turning = task("t1", "Turning", machining.id) + private val setup = task("t2", "Setup", machining.id) + private val planning = task("t3", "Planning", internal.id) + + @Test + fun project_then_task_are_separate_searchable_selections() { + setContent() + + composeRule.onNodeWithTag(EditTimeEntryTestTags.TASK_SELECTOR).assertIsNotEnabled() + composeRule.onNodeWithTag(EditTimeEntryTestTags.PROJECT_SELECTOR).performClick() + composeRule.onNodeWithTag(EditTimeEntryTestTags.PROJECT_SEARCH).performTextInput(" internal ") + composeRule.onNodeWithText(internal.name).performClick() + + composeRule.onNodeWithTag(EditTimeEntryTestTags.PROJECT_SELECTOR).assertTextContains(internal.name) + composeRule.onNodeWithTag(EditTimeEntryTestTags.TASK_SELECTOR).assertIsEnabled().performClick() + composeRule.onNodeWithTag(EditTimeEntryTestTags.TASK_SEARCH).performTextInput("PLAN") + composeRule.onNodeWithText(planning.name).performClick() + + composeRule.onNodeWithTag(EditTimeEntryTestTags.TASK_SELECTOR).assertTextContains(planning.name) + } + + @Test + fun task_picker_only_composes_tasks_for_the_selected_project() { + setContent(initialProjectId = machining.id) + + composeRule.onNodeWithTag(EditTimeEntryTestTags.TASK_SELECTOR).performClick() + + composeRule.onNodeWithText(turning.name).assertExists() + composeRule.onNodeWithText(setup.name).assertExists() + composeRule.onNodeWithText(planning.name).assertDoesNotExist() + } + + @Test + fun changing_project_clears_a_task_from_the_previous_project() { + setContent(initialProjectId = machining.id, initialTaskId = turning.id) + + composeRule.onNodeWithTag(EditTimeEntryTestTags.PROJECT_SELECTOR).performClick() + composeRule.onNodeWithText(internal.name).performClick() + + composeRule.onNodeWithTag(EditTimeEntryTestTags.TASK_SELECTOR).assertTextContains("No task") + } + + private fun setContent(initialProjectId: String? = null, initialTaskId: String? = null) { + composeRule.setContent { + var projectId by remember { mutableStateOf(initialProjectId) } + var taskId by remember { mutableStateOf(initialTaskId) } + MaterialTheme { + ProjectTaskDropdown( + projects = listOf(machining, internal), + tasks = listOf(turning, setup, planning), + selectedProjectId = projectId, + selectedTaskId = taskId, + onSelectionChanged = { selectedProjectId, selectedTaskId -> + projectId = selectedProjectId + taskId = selectedTaskId + }, + showProjectColors = true, + rounded = true, + ) + } + } + } + + private fun task(id: String, name: String, projectId: String) = Task( + id = id, + name = name, + projectId = projectId, + createdAt = "2026-08-18T00:00:00Z", + updatedAt = "2026-08-18T00:00:00Z", + ) +} diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenuTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenuTest.kt index 2265077..1d97a0c 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenuTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenuTest.kt @@ -21,36 +21,40 @@ class ProjectTaskDropdownMenuTest { private val tasks = listOf(turningTask, setupTask, otherTask) @Test - fun `project name match includes every task in that project`() { - val results = filterProjectsAndTasks(projects, tasks, " m5337 ") + fun `project search is case insensitive and trims whitespace`() { + val results = filterProjects(projects, " m5337 ") - assertEquals(listOf(matchingProject), results.projects) - assertEquals(listOf(turningTask, setupTask), results.tasksByProject[matchingProject.id]) + assertEquals(listOf(matchingProject), results) } @Test - fun `task name match includes only matching tasks and their project`() { - val results = filterProjectsAndTasks(projects, tasks, "TURNING - RUNNING") + fun `task search is case insensitive and trims whitespace`() { + val results = filterTasks(listOf(turningTask, setupTask), " TURNING - RUNNING ") - assertEquals(listOf(matchingProject), results.projects) - assertEquals(listOf(turningTask), results.tasksByProject[matchingProject.id]) + assertEquals(listOf(turningTask), results) } @Test - fun `blank query preserves all projects and tasks`() { - val results = filterProjectsAndTasks(projects, tasks, " ") + fun `blank searches preserve their available items`() { + assertEquals(projects, filterProjects(projects, " ")) + assertEquals(listOf(turningTask, setupTask), filterTasks(listOf(turningTask, setupTask), " ")) + } + + @Test + fun `tasks are grouped once and scoped to their selected project`() { + val groupedTasks = groupTasksByProject(tasks) - assertEquals(projects, results.projects) - assertEquals(listOf(turningTask, setupTask), results.tasksByProject[matchingProject.id]) - assertEquals(listOf(otherTask), results.tasksByProject[otherProject.id]) + assertEquals(listOf(turningTask, setupTask), groupedTasks[matchingProject.id]) + assertEquals(listOf(otherTask), groupedTasks[otherProject.id]) } @Test - fun `unmatched query returns no projects or tasks`() { - val results = filterProjectsAndTasks(projects, tasks, "not present") + fun `unmatched searches return no items`() { + val filteredProjects = filterProjects(projects, "not present") + val filteredTasks = filterTasks(tasks, "not present") - assertEquals(emptyList(), results.projects) - assertEquals(emptyMap>(), results.tasksByProject) + assertEquals(emptyList(), filteredProjects) + assertEquals(emptyList(), filteredTasks) } private fun project(id: String, name: String) = Project(id = id, name = name, color = "#000000") From c627c88c040f374edf55d8de138efc75a264ea7c Mon Sep 17 00:00:00 2001 From: AKolenda Date: Tue, 18 Aug 2026 16:15:43 -0600 Subject: [PATCH 03/11] Keep tracking fields after stopping --- .../dev/tricked/solidverdant/e2e/TestTags.kt | 2 + .../dev/tricked/solidverdant/MainActivity.kt | 4 + .../data/local/SettingsDataStore.kt | 37 ++++++ .../ui/tracking/TrackingScreen.kt | 45 ++++++++ .../ui/tracking/TrackingTestTags.kt | 2 + .../ui/tracking/TrackingViewModel.kt | 105 +++++++++++++++--- app/src/main/res/values-ja/strings.xml | 3 + app/src/main/res/values-nl/strings.xml | 3 + app/src/main/res/values/strings.xml | 3 + .../SettingsDataStoreTrackingRetentionTest.kt | 33 ++++++ .../tracking/TrackingControlsRetentionTest.kt | 83 ++++++++++++++ .../tracking/TrackingViewModelMutationTest.kt | 79 +++++++++++++ 12 files changed, 383 insertions(+), 16 deletions(-) create mode 100644 app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt create mode 100644 app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/TestTags.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/TestTags.kt index 9ecd066..203da79 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/TestTags.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/TestTags.kt @@ -26,6 +26,8 @@ object TestTags { const val TRACK_HISTORY_LIST = TrackingTestTags.HISTORY_LIST const val TRACK_ENTRY_ROW = TrackingTestTags.ENTRY_ROW const val TRACK_START_BUTTON = TrackingTestTags.START_BUTTON + const val TRACK_RESET_FIELDS_BUTTON = TrackingTestTags.RESET_FIELDS_BUTTON + const val TRACK_KEEP_FIELDS_SWITCH = TrackingTestTags.KEEP_FIELDS_SWITCH const val TRACK_STOP_BUTTON = TrackingTestTags.STOP_BUTTON const val TRACK_SETTINGS_BUTTON = TrackingTestTags.SETTINGS_BUTTON const val TRACK_LIVE_UPDATE_SWITCH = TrackingTestTags.LIVE_UPDATE_SWITCH diff --git a/app/src/main/java/dev/tricked/solidverdant/MainActivity.kt b/app/src/main/java/dev/tricked/solidverdant/MainActivity.kt index 9d51b10..7cf3518 100644 --- a/app/src/main/java/dev/tricked/solidverdant/MainActivity.kt +++ b/app/src/main/java/dev/tricked/solidverdant/MainActivity.kt @@ -218,6 +218,7 @@ fun SolidVerdantApp( val appTheme by trackingViewModel.appTheme.collectAsState(initial = AppThemeMode.SYSTEM) val optimisticRefresh by trackingViewModel.optimisticRefresh.collectAsState(initial = true) val liveUpdateEnabled by trackingViewModel.liveUpdateEnabled.collectAsState(initial = false) + val keepEntryFieldsAfterStop by trackingViewModel.keepEntryFieldsAfterStop.collectAsState(initial = true) val longTimerHours by trackingViewModel.longTimerHours.collectAsState(initial = 4) val hasSnapshot by trackingViewModel.hasSnapshot.collectAsState() val snapshotHydrated by trackingViewModel.snapshotHydrated.collectAsState() @@ -317,6 +318,7 @@ fun SolidVerdantApp( appTheme = appTheme, optimisticRefresh = optimisticRefresh, liveUpdateEnabled = liveUpdateEnabled, + keepEntryFieldsAfterStop = keepEntryFieldsAfterStop, longTimerHours = longTimerHours, editActiveEntryRequested = editActiveEntryRequested, onEditActiveEntryConsumed = onEditActiveEntryConsumed, @@ -326,6 +328,7 @@ fun SolidVerdantApp( onAppThemeChange = trackingViewModel::setAppTheme, onOptimisticRefreshChange = trackingViewModel::setOptimisticRefresh, onLiveUpdateEnabledChange = trackingViewModel::setLiveUpdateEnabled, + onKeepEntryFieldsAfterStopChange = trackingViewModel::setKeepEntryFieldsAfterStop, onLongTimerHoursChange = trackingViewModel::setLongTimerHours, onRefresh = { authUiState.currentMembership?.let { membership -> @@ -373,6 +376,7 @@ fun SolidVerdantApp( onTaskChange = { taskId -> trackingViewModel.updateTask(taskId) }, + onResetEntryFields = trackingViewModel::resetEntryFields, onTagsChange = { tags -> trackingViewModel.updateTags(tags) }, diff --git a/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt b/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt index f5740d0..0e2e07c 100644 --- a/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt +++ b/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt @@ -80,12 +80,15 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont private const val MEMBERSHIPS_JSON = "memberships_json" private const val CURRENT_MEMBERSHIP_ID = "current_membership_id" private const val CACHED_APP_THEME = "app_theme" + private const val CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP = "keep_entry_fields_after_stop" private const val TRACKING_STATE_JSON = "tracking_state_json" + private const val TRACKING_DRAFT_JSON = "tracking_draft_json" private const val REVIEW_BADGE_COUNT_PREFIX = "review_badge_count_" private val ALWAYS_SHOW_NOTIFICATION = booleanPreferencesKey("always_show_notification") private val APP_THEME = stringPreferencesKey("app_theme") private val OPTIMISTIC_REFRESH = booleanPreferencesKey("optimistic_refresh") private val LIVE_UPDATE_ENABLED = booleanPreferencesKey("live_update_enabled") + private val KEEP_ENTRY_FIELDS_AFTER_STOP = booleanPreferencesKey("keep_entry_fields_after_stop") private val LONG_TIMER_HOURS = intPreferencesKey("long_timer_hours") private val LONG_TIMER_WARNING_DEADLINE_EPOCH_MS = longPreferencesKey("long_timer_warning_deadline_epoch_ms") private val LONG_TIMER_WARNING_ENTRY_START_EPOCH_MS = longPreferencesKey("long_timer_warning_entry_start_epoch_ms") @@ -191,6 +194,14 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont val overlapCount: Int = 0, ) + @Serializable + data class CachedTrackingDraft( + val organizationId: String, + val description: String = "", + val projectId: String? = null, + val taskId: String? = null, + ) + fun getCachedTrackingState(): CachedTrackingState? = immediateCache.getString(TRACKING_STATE_JSON, null)?.let { encoded -> runCatching { json.decodeFromString(encoded) }.getOrNull() } @@ -201,6 +212,20 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont .apply() } + fun getCachedTrackingDraft(): CachedTrackingDraft? = immediateCache.getString(TRACKING_DRAFT_JSON, null)?.let { encoded -> + runCatching { json.decodeFromString(encoded) }.getOrNull() + } + + fun cacheTrackingDraft(draft: CachedTrackingDraft?) { + immediateCache.edit().apply { + if (draft == null) { + remove(TRACKING_DRAFT_JSON) + } else { + putString(TRACKING_DRAFT_JSON, json.encodeToString(draft)) + } + }.apply() + } + fun getCachedReviewBadgeCount(organizationId: String): Int = immediateCache.getInt(REVIEW_BADGE_COUNT_PREFIX + organizationId, 0) fun cacheReviewBadgeCount(organizationId: String, count: Int) { @@ -246,6 +271,13 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont preferences[LIVE_UPDATE_ENABLED] ?: false }.distinctUntilChanged() + /** Keep description, project, and task ready for the next entry after stopping. */ + val keepEntryFieldsAfterStop: Flow = dataStore.data.map { preferences -> + preferences[KEEP_ENTRY_FIELDS_AFTER_STOP] ?: true + }.distinctUntilChanged() + + fun getCachedKeepEntryFieldsAfterStop(): Boolean = immediateCache.getBoolean(CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP, true) + val longTimerHours: Flow = dataStore.data.map { it[LONG_TIMER_HOURS] ?: DEFAULT_LONG_TIMER_HOURS }.distinctUntilChanged() /** @@ -302,6 +334,11 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont dataStore.edit { preferences -> preferences[LIVE_UPDATE_ENABLED] = enabled } } + suspend fun setKeepEntryFieldsAfterStop(enabled: Boolean) { + immediateCache.edit().putBoolean(CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP, enabled).apply() + dataStore.edit { preferences -> preferences[KEEP_ENTRY_FIELDS_AFTER_STOP] = enabled } + } + suspend fun setLongTimerHours(hours: Int) { require(hours in MIN_LONG_TIMER_HOURS..MAX_LONG_TIMER_HOURS) dataStore.edit { it[LONG_TIMER_HOURS] = hours } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt index 213ccf8..1710c58 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt @@ -251,6 +251,7 @@ fun TrackingScreen( appTheme: AppThemeMode, optimisticRefresh: Boolean, liveUpdateEnabled: Boolean, + keepEntryFieldsAfterStop: Boolean, longTimerHours: Int, editActiveEntryRequested: Boolean, onEditActiveEntryConsumed: () -> Unit, @@ -258,6 +259,7 @@ fun TrackingScreen( onAppThemeChange: (AppThemeMode) -> Unit, onOptimisticRefreshChange: (Boolean) -> Unit, onLiveUpdateEnabledChange: (Boolean) -> Unit, + onKeepEntryFieldsAfterStopChange: (Boolean) -> Unit, onLongTimerHoursChange: (Int) -> Unit, onRefresh: () -> Unit, onLogout: () -> Unit, @@ -269,6 +271,7 @@ fun TrackingScreen( onDescriptionChange: (String) -> Unit, onProjectChange: (String?) -> Unit, onTaskChange: (String?) -> Unit, + onResetEntryFields: () -> Unit, onTagsChange: (List) -> Unit, onBillableChange: (Boolean) -> Unit, onUpdateCurrentEntry: () -> Unit, @@ -688,6 +691,29 @@ fun TrackingScreen( ) } + HorizontalDivider() + Row( + modifier = Modifier.fillMaxWidth().padding(horizontal = 16.dp, vertical = 12.dp), + verticalAlignment = Alignment.CenterVertically, + ) { + Column(modifier = Modifier.weight(1f)) { + Text( + stringResource(R.string.keep_entry_fields_after_stop), + style = MaterialTheme.typography.bodyLarge, + ) + Text( + stringResource(R.string.keep_entry_fields_after_stop_description), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + ) + } + Switch( + checked = keepEntryFieldsAfterStop, + onCheckedChange = onKeepEntryFieldsAfterStopChange, + modifier = Modifier.testTag(TrackingTestTags.KEEP_FIELDS_SWITCH), + ) + } + HorizontalDivider() Row( modifier = Modifier.fillMaxWidth().padding(horizontal = 16.dp, vertical = 12.dp), @@ -955,6 +981,7 @@ fun TrackingScreen( onDescriptionChange = onDescriptionChange, onProjectChange = onProjectChange, onTaskChange = onTaskChange, + onResetEntryFields = onResetEntryFields, onTagsChange = onTagsChange, onBillableChange = onBillableChange, onStart = onStartTracking, @@ -1827,6 +1854,7 @@ internal fun TrackingControls( onDescriptionChange: (String) -> Unit, onProjectChange: (String?) -> Unit, onTaskChange: (String?) -> Unit, + onResetEntryFields: () -> Unit = {}, onTagsChange: (List) -> Unit, onBillableChange: (Boolean) -> Unit, onStart: () -> Unit, @@ -1929,6 +1957,23 @@ internal fun TrackingControls( enabled = !uiState.isMutating ) + if (!uiState.isTracking && !uiState.isPaused && + (uiState.editingDescription.isNotEmpty() || uiState.editingProjectId != null || uiState.editingTaskId != null)) { + OutlinedButton( + onClick = onResetEntryFields, + enabled = !uiState.isMutating, + modifier = Modifier + .fillMaxWidth() + .heightIn(min = Dimens.MinTouchTarget) + .testTag(TrackingTestTags.RESET_FIELDS_BUTTON), + shape = RoundedCornerShape(Dimens.CornerRadius), + ) { + Icon(Icons.Default.Refresh, contentDescription = null) + Spacer(Modifier.width(Dimens.Space8)) + Text(stringResource(R.string.reset_entry_fields)) + } + } + // Tags selector if (uiState.tags.isNotEmpty()) { TagsSelector( diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt index c204e1d..e92d917 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt @@ -18,8 +18,10 @@ object TrackingTestTags { const val ENTRY_ROW = "track_entry_row" const val START_BUTTON = "track_start_button" const val STOP_BUTTON = "track_stop_button" + const val RESET_FIELDS_BUTTON = "track_reset_fields_button" const val SETTINGS_BUTTON = "track_settings_button" const val LIVE_UPDATE_SWITCH = "track_live_update_switch" + const val KEEP_FIELDS_SWITCH = "track_keep_fields_switch" const val REFRESH_BUTTON = "track_refresh_button" const val ADD_ENTRY_BUTTON = "track_add_entry_button" const val EDIT_ACTIVE_ENTRY = "track_edit_active_entry" diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt index 709e9ae..efcc85c 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt @@ -185,6 +185,9 @@ class TrackingViewModel @Inject constructor( private var currentPolicy: TemporalPolicy = runBlocking { temporalPolicyProvider.current() } private val cachedTrackingState = settingsDataStore.getCachedTrackingState() + private val cachedTrackingDraft = settingsDataStore.getCachedTrackingDraft() + ?.takeIf { draft -> draft.organizationId == cachedTrackingState?.organizationId } + private var keepEntryFieldsAfterStopEnabled = settingsDataStore.getCachedKeepEntryFieldsAfterStop() private val _uiState = MutableStateFlow( cachedTrackingState?.let { cached -> TrackingUiState( @@ -200,9 +203,9 @@ class TrackingViewModel @Inject constructor( clients = cached.clients, tasks = cached.tasks, tags = cached.tags, - editingDescription = cached.activeEntry?.description.orEmpty(), - editingProjectId = cached.activeEntry?.projectId, - editingTaskId = cached.activeEntry?.taskId, + editingDescription = cached.activeEntry?.description ?: cachedTrackingDraft?.description.orEmpty(), + editingProjectId = cached.activeEntry?.projectId ?: cachedTrackingDraft?.projectId, + editingTaskId = cached.activeEntry?.taskId ?: cachedTrackingDraft?.taskId, editingTags = cached.activeEntry?.tags?.map { it.id }.orEmpty(), editingBillable = cached.activeEntry?.billable ?: false, zone = currentPolicy.zone, @@ -227,6 +230,7 @@ class TrackingViewModel @Inject constructor( val appTheme = settingsDataStore.appTheme val optimisticRefresh = settingsDataStore.optimisticRefresh val liveUpdateEnabled = settingsDataStore.liveUpdateEnabled + val keepEntryFieldsAfterStop = settingsDataStore.keepEntryFieldsAfterStop val longTimerHours = settingsDataStore.longTimerHours private val _snapshotHydrated = MutableStateFlow(false) val snapshotHydrated: StateFlow = _snapshotHydrated.asStateFlow() @@ -247,6 +251,7 @@ class TrackingViewModel @Inject constructor( private var syncVisibilityJob: Job? = null private var latestSyncOperations: List = emptyList() private var firstFrameCacheJob: Job? = null + private var trackingDraftCacheJob: Job? = null private var hasCachedContinueEntry = false private var lastCachedContinueEntry: TimeEntry? = null private var collectingOrganizationId: String? = null @@ -302,6 +307,11 @@ class TrackingViewModel @Inject constructor( } } } + viewModelScope.launch { + settingsDataStore.keepEntryFieldsAfterStop.collect { enabled -> + keepEntryFieldsAfterStopEnabled = enabled + } + } } /** @@ -326,6 +336,11 @@ class TrackingViewModel @Inject constructor( viewModelScope.launch { settingsDataStore.setLiveUpdateEnabled(enabled) } } + fun setKeepEntryFieldsAfterStop(enabled: Boolean) { + keepEntryFieldsAfterStopEnabled = enabled + viewModelScope.launch { settingsDataStore.setKeepEntryFieldsAfterStop(enabled) } + } + fun setLongTimerHours(hours: Int) { viewModelScope.launch { settingsDataStore.setLongTimerHours(hours) @@ -489,7 +504,7 @@ class TrackingViewModel @Inject constructor( if (mode == HistoryWindowMode.RECENT) { historyOffset = data.entries.size } - _uiState.value = currentState.copy( + val nextState = currentState.copy( timeEntries = displayedEntries, overlapCount = overlapCount, projects = data.projects, @@ -512,12 +527,32 @@ class TrackingViewModel @Inject constructor( isLoading = currentState.isLoading || timerMutationInProgress, // Only reset in-progress edits when the active entry itself changes, // so a user's typing is not clobbered by a background emission. - editingDescription = if (activeChanged) active?.description.orEmpty() else currentState.editingDescription, - editingProjectId = if (activeChanged) active?.projectId else currentState.editingProjectId, - editingTaskId = if (activeChanged) active?.taskId else currentState.editingTaskId, + editingDescription = if (activeChanged && active != null) { + active.description.orEmpty() + } else if (activeChanged && !keepEntryFieldsAfterStopEnabled) { + "" + } else { + currentState.editingDescription + }, + editingProjectId = if (activeChanged && active != null) { + active.projectId + } else if (activeChanged && !keepEntryFieldsAfterStopEnabled) { + null + } else { + currentState.editingProjectId + }, + editingTaskId = if (activeChanged && active != null) { + active.taskId + } else if (activeChanged && !keepEntryFieldsAfterStopEnabled) { + null + } else { + currentState.editingTaskId + }, editingTags = if (activeChanged) active?.tags?.map { it.id }.orEmpty() else currentState.editingTags, editingBillable = if (activeChanged) (active?.billable ?: false) else currentState.editingBillable, ) + _uiState.value = nextState + if (activeChanged && active == null) cacheTrackingDraft(nextState) // Both caches JSON-encode sizable object graphs; keep that (and the // SharedPreferences write) off the main thread, and skip no-op continue writes. if (!hasCachedContinueEntry || continueEntry != lastCachedContinueEntry) { @@ -623,6 +658,8 @@ class TrackingViewModel @Inject constructor( editingBillable = false, conflictedEntryIds = emptySet(), ) + trackingDraftCacheJob?.cancel() + viewModelScope.launch(Dispatchers.IO) { settingsDataStore.cacheTrackingDraft(null) } } private fun isCurrentHistoryRequest(organizationId: String, memberId: String, generation: Long): Boolean = @@ -1232,6 +1269,7 @@ class TrackingViewModel @Inject constructor( */ fun updateDescription(description: String) { _uiState.value = _uiState.value.copy(editingDescription = description) + cacheTrackingDraft(_uiState.value) } /** @@ -1243,6 +1281,7 @@ class TrackingViewModel @Inject constructor( // Clear task if project changed editingTaskId = if (projectId != _uiState.value.editingProjectId) null else _uiState.value.editingTaskId, ) + cacheTrackingDraft(_uiState.value) } /** @@ -1250,6 +1289,35 @@ class TrackingViewModel @Inject constructor( */ fun updateTask(taskId: String?) { _uiState.value = _uiState.value.copy(editingTaskId = taskId) + cacheTrackingDraft(_uiState.value) + } + + /** Clear only the reusable entry identity fields; tags and billable remain unchanged. */ + fun resetEntryFields() { + val currentState = _uiState.value + if (currentState.isTracking || currentState.isPaused) return + _uiState.value = currentState.copy( + editingDescription = "", + editingProjectId = null, + editingTaskId = null, + ) + cacheTrackingDraft(_uiState.value) + } + + private fun cacheTrackingDraft(state: TrackingUiState) { + val organizationId = collectingOrganizationId ?: cachedTrackingState?.organizationId ?: return + trackingDraftCacheJob?.cancel() + trackingDraftCacheJob = viewModelScope.launch(Dispatchers.IO) { + delay(TRACKING_DRAFT_CACHE_DEBOUNCE_MS) + settingsDataStore.cacheTrackingDraft( + SettingsDataStore.CachedTrackingDraft( + organizationId = organizationId, + description = state.editingDescription, + projectId = state.editingProjectId, + taskId = state.editingTaskId, + ), + ) + } } /** @@ -1393,14 +1461,16 @@ class TrackingViewModel @Inject constructor( // If paused, the entry is already stopped - just clear the paused state if (currentEntry == null && _uiState.value.isPaused) { - _uiState.value = _uiState.value.copy( + val currentState = _uiState.value + _uiState.value = currentState.copy( isPaused = false, - editingDescription = "", - editingProjectId = null, - editingTaskId = null, + editingDescription = if (keepEntryFieldsAfterStopEnabled) currentState.editingDescription else "", + editingProjectId = if (keepEntryFieldsAfterStopEnabled) currentState.editingProjectId else null, + editingTaskId = if (keepEntryFieldsAfterStopEnabled) currentState.editingTaskId else null, editingTags = emptyList(), editingBillable = false, ) + cacheTrackingDraft(_uiState.value) viewModelScope.launch { updateNotificationState() settingsDataStore.setWidgetTrackingState(isTracking = false) @@ -1428,16 +1498,18 @@ class TrackingViewModel @Inject constructor( timeEntryRepository.stopEntry(currentEntry, currentEntry.userId) syncTrigger.requestSync() - _uiState.value = _uiState.value.copy( + val currentState = _uiState.value + _uiState.value = currentState.copy( isTracking = false, isPaused = false, currentTimeEntry = null, - editingDescription = "", - editingProjectId = null, - editingTaskId = null, + editingDescription = if (keepEntryFieldsAfterStopEnabled) currentState.editingDescription else "", + editingProjectId = if (keepEntryFieldsAfterStopEnabled) currentState.editingProjectId else null, + editingTaskId = if (keepEntryFieldsAfterStopEnabled) currentState.editingTaskId else null, editingTags = emptyList(), editingBillable = false, ) + cacheTrackingDraft(_uiState.value) stopTimer() lastCollectedActiveId = null Timber.d("Time entry stopped successfully (optimistic)") @@ -1449,8 +1521,8 @@ class TrackingViewModel @Inject constructor( settingsDataStore.setWidgetTrackingState(isTracking = false) TimeTrackingWidget.requestUpdate(context) - _uiState.value = _uiState.value.copy(isLoading = false) timerMutationInProgress = false + _uiState.value = _uiState.value.copy(isLoading = false) } catch (e: Exception) { locallyStoppingEntryIds.remove(currentEntry.id) handleTimerMutationFailure(e, "Failed to stop time entry") @@ -1878,6 +1950,7 @@ class TrackingViewModel @Inject constructor( const val HISTORY_REFRESH_LIMIT = 250 const val FIRST_FRAME_ENTRY_LIMIT = 30 const val FIRST_FRAME_CACHE_DEBOUNCE_MS = 500L + const val TRACKING_DRAFT_CACHE_DEBOUNCE_MS = 300L const val DELETE_UNDO_WINDOW_MS = 5_000L } } diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index ff6908c..82a40f8 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -245,6 +245,9 @@ 作業中 楽観的な更新 保存済みのアカウント情報ですぐに取得します。API 呼び出しが少し増えます + 停止後も入力内容を保持 + 次の入力用に説明、プロジェクト、タスクを保持します + 入力内容をリセット テーマ アプリの配色を選択 システム diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 47f8702..4603080 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -257,6 +257,9 @@ Bezig Optimistisch vernieuwen Haal gegevens direct op met opgeslagen accountinformatie; gebruikt enkele extra API-aanroepen + Invoervelden behouden na stoppen + Behoud de beschrijving, het project en de taak voor je volgende invoer + Invoervelden wissen Thema Kies de kleurstijl van de app Systeem diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ab74fb2..14e5497 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -266,6 +266,9 @@ Working Optimistic refresh Fetch data immediately using cached account info; uses a few extra API calls + Keep entry fields after stopping + Keep the description, project, and task ready for your next entry + Reset entry fields Theme Choose the app color style System diff --git a/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt b/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt new file mode 100644 index 0000000..9ea1aab --- /dev/null +++ b/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt @@ -0,0 +1,33 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.data.local + +import androidx.test.core.app.ApplicationProvider +import kotlinx.coroutines.flow.first +import kotlinx.coroutines.test.runTest +import org.junit.Assert.assertFalse +import org.junit.Assert.assertTrue +import org.junit.Test +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner + +@RunWith(RobolectricTestRunner::class) +class SettingsDataStoreTrackingRetentionTest { + + private val settingsDataStore = SettingsDataStore(ApplicationProvider.getApplicationContext()) + + @Test + fun keep_entry_fields_setting_round_trips_through_flow_and_first_frame_cache() = runTest { + settingsDataStore.setKeepEntryFieldsAfterStop(false) + assertFalse(settingsDataStore.keepEntryFieldsAfterStop.first()) + assertFalse(settingsDataStore.getCachedKeepEntryFieldsAfterStop()) + + settingsDataStore.setKeepEntryFieldsAfterStop(true) + assertTrue(settingsDataStore.keepEntryFieldsAfterStop.first()) + assertTrue(settingsDataStore.getCachedKeepEntryFieldsAfterStop()) + } +} diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt new file mode 100644 index 0000000..d32aadd --- /dev/null +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt @@ -0,0 +1,83 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.ui.tracking + +import androidx.compose.material3.MaterialTheme +import androidx.compose.ui.test.assertIsDisplayed +import androidx.compose.ui.test.junit4.v2.createComposeRule +import androidx.compose.ui.test.onNodeWithTag +import androidx.compose.ui.test.performClick +import org.junit.Assert.assertTrue +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner +import org.robolectric.annotation.Config + +@RunWith(RobolectricTestRunner::class) +@Config(sdk = [34]) +class TrackingControlsRetentionTest { + + @get:Rule + val composeRule = createComposeRule() + + @Test + fun idle_retained_fields_show_an_operable_reset_button() { + var resetClicked = false + composeRule.setContent { + MaterialTheme { + TrackingControls( + uiState = TrackingUiState( + editingDescription = "Precision setup", + editingProjectId = "project-1", + editingTaskId = "task-1", + ), + onDescriptionChange = {}, + onProjectChange = {}, + onTaskChange = {}, + onResetEntryFields = { resetClicked = true }, + onTagsChange = {}, + onBillableChange = {}, + onStart = {}, + onStop = {}, + onPause = {}, + onResume = {}, + onUpdate = {}, + ) + } + } + + composeRule.onNodeWithTag(TrackingTestTags.RESET_FIELDS_BUTTON) + .assertIsDisplayed() + .performClick() + + assertTrue(resetClicked) + } + + @Test + fun blank_idle_fields_do_not_show_reset_button() { + composeRule.setContent { + MaterialTheme { + TrackingControls( + uiState = TrackingUiState(), + onDescriptionChange = {}, + onProjectChange = {}, + onTaskChange = {}, + onTagsChange = {}, + onBillableChange = {}, + onStart = {}, + onStop = {}, + onPause = {}, + onResume = {}, + onUpdate = {}, + ) + } + } + + composeRule.onNodeWithTag(TrackingTestTags.RESET_FIELDS_BUTTON).assertDoesNotExist() + } +} diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt index 4c2ba78..1909025 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt @@ -113,6 +113,60 @@ class TrackingViewModelMutationTest { assertEquals("network disappeared", viewModel.uiState.value.error) } + @Test + fun stop_keeps_description_project_and_task_when_preference_is_enabled() = runTest(dispatcher.scheduler) { + settings.setKeepEntryFieldsAfterStop(true) + val active = activeEntry() + val repository = mockk(relaxed = true) + cacheActiveEntry(active) + val viewModel = viewModel(repository) + + viewModel.stopTimeEntry() + dispatcher.scheduler.runCurrent() + + assertEquals("Precision setup", viewModel.uiState.value.editingDescription) + assertEquals("project-1", viewModel.uiState.value.editingProjectId) + assertEquals("task-1", viewModel.uiState.value.editingTaskId) + assertFalse(viewModel.uiState.value.editingBillable) + coVerify(exactly = 1) { repository.stopEntry(active, "user") } + } + + @Test + fun stop_clears_entry_fields_when_preference_is_disabled() = runTest(dispatcher.scheduler) { + settings.setKeepEntryFieldsAfterStop(false) + val active = activeEntry() + val repository = mockk(relaxed = true) + cacheActiveEntry(active) + val viewModel = viewModel(repository) + + viewModel.stopTimeEntry() + dispatcher.scheduler.runCurrent() + + assertEquals("", viewModel.uiState.value.editingDescription) + assertEquals(null, viewModel.uiState.value.editingProjectId) + assertEquals(null, viewModel.uiState.value.editingTaskId) + } + + @Test + fun reset_clears_only_reusable_entry_fields() = runTest(dispatcher.scheduler) { + settings.setKeepEntryFieldsAfterStop(true) + val repository = mockk(relaxed = true) + cacheActiveEntry(activeEntry()) + val viewModel = viewModel(repository) + viewModel.stopTimeEntry() + dispatcher.scheduler.runCurrent() + viewModel.updateTags(listOf("tag-1")) + viewModel.updateBillable(true) + + viewModel.resetEntryFields() + + assertEquals("", viewModel.uiState.value.editingDescription) + assertEquals(null, viewModel.uiState.value.editingProjectId) + assertEquals(null, viewModel.uiState.value.editingTaskId) + assertEquals(listOf("tag-1"), viewModel.uiState.value.editingTags) + assertTrue(viewModel.uiState.value.editingBillable) + } + @Test fun repeated_start_is_ignored_while_the_first_mutation_is_in_flight() = runTest(dispatcher.scheduler) { val release = CompletableDeferred() @@ -229,4 +283,29 @@ class TrackingViewModelMutationTest { context = context, clock = clock, ).also { viewModels += it } + + private fun activeEntry() = TimeEntry( + id = "active", + userId = "user", + organizationId = "org", + start = "2026-08-10T08:00:00Z", + description = "Precision setup", + projectId = "project-1", + taskId = "task-1", + billable = true, + ) + + private fun cacheActiveEntry(active: TimeEntry) { + settings.cacheTrackingState( + SettingsDataStore.CachedTrackingState( + organizationId = "org", + timeEntries = listOf(active), + projects = emptyList(), + clients = emptyList(), + tasks = emptyList(), + tags = emptyList(), + activeEntry = active, + ), + ) + } } From c388c3cb7a286e75713464b15f740bb854b8fc22 Mon Sep 17 00:00:00 2001 From: AKolenda Date: Tue, 18 Aug 2026 17:16:23 -0600 Subject: [PATCH 04/11] Add auto-clear tracking fields setting --- .../dev/tricked/solidverdant/e2e/TestTags.kt | 2 +- .../dev/tricked/solidverdant/MainActivity.kt | 6 ++-- .../data/local/SettingsDataStore.kt | 34 ++++++++++++++----- .../ui/tracking/TrackingScreen.kt | 18 +++++----- .../ui/tracking/TrackingTestTags.kt | 2 +- .../ui/tracking/TrackingViewModel.kt | 32 ++++++++--------- app/src/main/res/values-ja/strings.xml | 4 +-- app/src/main/res/values-nl/strings.xml | 4 +-- app/src/main/res/values/strings.xml | 4 +-- .../SettingsDataStoreTrackingRetentionTest.kt | 14 ++++---- .../tracking/TrackingControlsRetentionTest.kt | 25 ++++++++++++++ .../tracking/TrackingViewModelMutationTest.kt | 10 +++--- 12 files changed, 99 insertions(+), 56 deletions(-) diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/TestTags.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/TestTags.kt index 203da79..dbefe13 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/TestTags.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/TestTags.kt @@ -27,7 +27,7 @@ object TestTags { const val TRACK_ENTRY_ROW = TrackingTestTags.ENTRY_ROW const val TRACK_START_BUTTON = TrackingTestTags.START_BUTTON const val TRACK_RESET_FIELDS_BUTTON = TrackingTestTags.RESET_FIELDS_BUTTON - const val TRACK_KEEP_FIELDS_SWITCH = TrackingTestTags.KEEP_FIELDS_SWITCH + const val TRACK_AUTO_CLEAR_FIELDS_SWITCH = TrackingTestTags.AUTO_CLEAR_FIELDS_SWITCH const val TRACK_STOP_BUTTON = TrackingTestTags.STOP_BUTTON const val TRACK_SETTINGS_BUTTON = TrackingTestTags.SETTINGS_BUTTON const val TRACK_LIVE_UPDATE_SWITCH = TrackingTestTags.LIVE_UPDATE_SWITCH diff --git a/app/src/main/java/dev/tricked/solidverdant/MainActivity.kt b/app/src/main/java/dev/tricked/solidverdant/MainActivity.kt index 7cf3518..72f18b5 100644 --- a/app/src/main/java/dev/tricked/solidverdant/MainActivity.kt +++ b/app/src/main/java/dev/tricked/solidverdant/MainActivity.kt @@ -218,7 +218,7 @@ fun SolidVerdantApp( val appTheme by trackingViewModel.appTheme.collectAsState(initial = AppThemeMode.SYSTEM) val optimisticRefresh by trackingViewModel.optimisticRefresh.collectAsState(initial = true) val liveUpdateEnabled by trackingViewModel.liveUpdateEnabled.collectAsState(initial = false) - val keepEntryFieldsAfterStop by trackingViewModel.keepEntryFieldsAfterStop.collectAsState(initial = true) + val autoClearEntryFieldsAfterStop by trackingViewModel.autoClearEntryFieldsAfterStop.collectAsState(initial = true) val longTimerHours by trackingViewModel.longTimerHours.collectAsState(initial = 4) val hasSnapshot by trackingViewModel.hasSnapshot.collectAsState() val snapshotHydrated by trackingViewModel.snapshotHydrated.collectAsState() @@ -318,7 +318,7 @@ fun SolidVerdantApp( appTheme = appTheme, optimisticRefresh = optimisticRefresh, liveUpdateEnabled = liveUpdateEnabled, - keepEntryFieldsAfterStop = keepEntryFieldsAfterStop, + autoClearEntryFieldsAfterStop = autoClearEntryFieldsAfterStop, longTimerHours = longTimerHours, editActiveEntryRequested = editActiveEntryRequested, onEditActiveEntryConsumed = onEditActiveEntryConsumed, @@ -328,7 +328,7 @@ fun SolidVerdantApp( onAppThemeChange = trackingViewModel::setAppTheme, onOptimisticRefreshChange = trackingViewModel::setOptimisticRefresh, onLiveUpdateEnabledChange = trackingViewModel::setLiveUpdateEnabled, - onKeepEntryFieldsAfterStopChange = trackingViewModel::setKeepEntryFieldsAfterStop, + onAutoClearEntryFieldsAfterStopChange = trackingViewModel::setAutoClearEntryFieldsAfterStop, onLongTimerHoursChange = trackingViewModel::setLongTimerHours, onRefresh = { authUiState.currentMembership?.let { membership -> diff --git a/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt b/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt index 0e2e07c..68feaf6 100644 --- a/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt +++ b/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt @@ -80,7 +80,8 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont private const val MEMBERSHIPS_JSON = "memberships_json" private const val CURRENT_MEMBERSHIP_ID = "current_membership_id" private const val CACHED_APP_THEME = "app_theme" - private const val CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP = "keep_entry_fields_after_stop" + private const val CACHED_AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP = "auto_clear_entry_fields_after_stop" + private const val LEGACY_CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP = "keep_entry_fields_after_stop" private const val TRACKING_STATE_JSON = "tracking_state_json" private const val TRACKING_DRAFT_JSON = "tracking_draft_json" private const val REVIEW_BADGE_COUNT_PREFIX = "review_badge_count_" @@ -88,7 +89,8 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont private val APP_THEME = stringPreferencesKey("app_theme") private val OPTIMISTIC_REFRESH = booleanPreferencesKey("optimistic_refresh") private val LIVE_UPDATE_ENABLED = booleanPreferencesKey("live_update_enabled") - private val KEEP_ENTRY_FIELDS_AFTER_STOP = booleanPreferencesKey("keep_entry_fields_after_stop") + private val AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP = booleanPreferencesKey("auto_clear_entry_fields_after_stop") + private val LEGACY_KEEP_ENTRY_FIELDS_AFTER_STOP = booleanPreferencesKey("keep_entry_fields_after_stop") private val LONG_TIMER_HOURS = intPreferencesKey("long_timer_hours") private val LONG_TIMER_WARNING_DEADLINE_EPOCH_MS = longPreferencesKey("long_timer_warning_deadline_epoch_ms") private val LONG_TIMER_WARNING_ENTRY_START_EPOCH_MS = longPreferencesKey("long_timer_warning_entry_start_epoch_ms") @@ -271,12 +273,20 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont preferences[LIVE_UPDATE_ENABLED] ?: false }.distinctUntilChanged() - /** Keep description, project, and task ready for the next entry after stopping. */ - val keepEntryFieldsAfterStop: Flow = dataStore.data.map { preferences -> - preferences[KEEP_ENTRY_FIELDS_AFTER_STOP] ?: true + /** Clear description, project, and task after stopping. Defaults on. */ + val autoClearEntryFieldsAfterStop: Flow = dataStore.data.map { preferences -> + preferences[AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP] + ?: preferences[LEGACY_KEEP_ENTRY_FIELDS_AFTER_STOP]?.not() + ?: true }.distinctUntilChanged() - fun getCachedKeepEntryFieldsAfterStop(): Boolean = immediateCache.getBoolean(CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP, true) + fun getCachedAutoClearEntryFieldsAfterStop(): Boolean = when { + immediateCache.contains(CACHED_AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP) -> + immediateCache.getBoolean(CACHED_AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP, true) + immediateCache.contains(LEGACY_CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP) -> + !immediateCache.getBoolean(LEGACY_CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP, false) + else -> true + } val longTimerHours: Flow = dataStore.data.map { it[LONG_TIMER_HOURS] ?: DEFAULT_LONG_TIMER_HOURS }.distinctUntilChanged() @@ -334,9 +344,15 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont dataStore.edit { preferences -> preferences[LIVE_UPDATE_ENABLED] = enabled } } - suspend fun setKeepEntryFieldsAfterStop(enabled: Boolean) { - immediateCache.edit().putBoolean(CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP, enabled).apply() - dataStore.edit { preferences -> preferences[KEEP_ENTRY_FIELDS_AFTER_STOP] = enabled } + suspend fun setAutoClearEntryFieldsAfterStop(enabled: Boolean) { + immediateCache.edit() + .putBoolean(CACHED_AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP, enabled) + .remove(LEGACY_CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP) + .apply() + dataStore.edit { preferences -> + preferences[AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP] = enabled + preferences.remove(LEGACY_KEEP_ENTRY_FIELDS_AFTER_STOP) + } } suspend fun setLongTimerHours(hours: Int) { diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt index 1710c58..b149da2 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt @@ -251,7 +251,7 @@ fun TrackingScreen( appTheme: AppThemeMode, optimisticRefresh: Boolean, liveUpdateEnabled: Boolean, - keepEntryFieldsAfterStop: Boolean, + autoClearEntryFieldsAfterStop: Boolean, longTimerHours: Int, editActiveEntryRequested: Boolean, onEditActiveEntryConsumed: () -> Unit, @@ -259,7 +259,7 @@ fun TrackingScreen( onAppThemeChange: (AppThemeMode) -> Unit, onOptimisticRefreshChange: (Boolean) -> Unit, onLiveUpdateEnabledChange: (Boolean) -> Unit, - onKeepEntryFieldsAfterStopChange: (Boolean) -> Unit, + onAutoClearEntryFieldsAfterStopChange: (Boolean) -> Unit, onLongTimerHoursChange: (Int) -> Unit, onRefresh: () -> Unit, onLogout: () -> Unit, @@ -698,19 +698,19 @@ fun TrackingScreen( ) { Column(modifier = Modifier.weight(1f)) { Text( - stringResource(R.string.keep_entry_fields_after_stop), + stringResource(R.string.auto_clear_entry_fields_after_stop), style = MaterialTheme.typography.bodyLarge, ) Text( - stringResource(R.string.keep_entry_fields_after_stop_description), + stringResource(R.string.auto_clear_entry_fields_after_stop_description), style = MaterialTheme.typography.bodySmall, color = MaterialTheme.colorScheme.onSurfaceVariant, ) } Switch( - checked = keepEntryFieldsAfterStop, - onCheckedChange = onKeepEntryFieldsAfterStopChange, - modifier = Modifier.testTag(TrackingTestTags.KEEP_FIELDS_SWITCH), + checked = autoClearEntryFieldsAfterStop, + onCheckedChange = onAutoClearEntryFieldsAfterStopChange, + modifier = Modifier.testTag(TrackingTestTags.AUTO_CLEAR_FIELDS_SWITCH), ) } @@ -982,6 +982,7 @@ fun TrackingScreen( onProjectChange = onProjectChange, onTaskChange = onTaskChange, onResetEntryFields = onResetEntryFields, + autoClearEntryFieldsAfterStop = autoClearEntryFieldsAfterStop, onTagsChange = onTagsChange, onBillableChange = onBillableChange, onStart = onStartTracking, @@ -1855,6 +1856,7 @@ internal fun TrackingControls( onProjectChange: (String?) -> Unit, onTaskChange: (String?) -> Unit, onResetEntryFields: () -> Unit = {}, + autoClearEntryFieldsAfterStop: Boolean = true, onTagsChange: (List) -> Unit, onBillableChange: (Boolean) -> Unit, onStart: () -> Unit, @@ -1957,7 +1959,7 @@ internal fun TrackingControls( enabled = !uiState.isMutating ) - if (!uiState.isTracking && !uiState.isPaused && + if (!autoClearEntryFieldsAfterStop && !uiState.isTracking && !uiState.isPaused && (uiState.editingDescription.isNotEmpty() || uiState.editingProjectId != null || uiState.editingTaskId != null)) { OutlinedButton( onClick = onResetEntryFields, diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt index e92d917..64973c0 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt @@ -21,7 +21,7 @@ object TrackingTestTags { const val RESET_FIELDS_BUTTON = "track_reset_fields_button" const val SETTINGS_BUTTON = "track_settings_button" const val LIVE_UPDATE_SWITCH = "track_live_update_switch" - const val KEEP_FIELDS_SWITCH = "track_keep_fields_switch" + const val AUTO_CLEAR_FIELDS_SWITCH = "track_auto_clear_fields_switch" const val REFRESH_BUTTON = "track_refresh_button" const val ADD_ENTRY_BUTTON = "track_add_entry_button" const val EDIT_ACTIVE_ENTRY = "track_edit_active_entry" diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt index efcc85c..d6a33e2 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt @@ -187,7 +187,7 @@ class TrackingViewModel @Inject constructor( private val cachedTrackingState = settingsDataStore.getCachedTrackingState() private val cachedTrackingDraft = settingsDataStore.getCachedTrackingDraft() ?.takeIf { draft -> draft.organizationId == cachedTrackingState?.organizationId } - private var keepEntryFieldsAfterStopEnabled = settingsDataStore.getCachedKeepEntryFieldsAfterStop() + private var autoClearEntryFieldsAfterStopEnabled = settingsDataStore.getCachedAutoClearEntryFieldsAfterStop() private val _uiState = MutableStateFlow( cachedTrackingState?.let { cached -> TrackingUiState( @@ -230,7 +230,7 @@ class TrackingViewModel @Inject constructor( val appTheme = settingsDataStore.appTheme val optimisticRefresh = settingsDataStore.optimisticRefresh val liveUpdateEnabled = settingsDataStore.liveUpdateEnabled - val keepEntryFieldsAfterStop = settingsDataStore.keepEntryFieldsAfterStop + val autoClearEntryFieldsAfterStop = settingsDataStore.autoClearEntryFieldsAfterStop val longTimerHours = settingsDataStore.longTimerHours private val _snapshotHydrated = MutableStateFlow(false) val snapshotHydrated: StateFlow = _snapshotHydrated.asStateFlow() @@ -308,8 +308,8 @@ class TrackingViewModel @Inject constructor( } } viewModelScope.launch { - settingsDataStore.keepEntryFieldsAfterStop.collect { enabled -> - keepEntryFieldsAfterStopEnabled = enabled + settingsDataStore.autoClearEntryFieldsAfterStop.collect { enabled -> + autoClearEntryFieldsAfterStopEnabled = enabled } } } @@ -336,9 +336,9 @@ class TrackingViewModel @Inject constructor( viewModelScope.launch { settingsDataStore.setLiveUpdateEnabled(enabled) } } - fun setKeepEntryFieldsAfterStop(enabled: Boolean) { - keepEntryFieldsAfterStopEnabled = enabled - viewModelScope.launch { settingsDataStore.setKeepEntryFieldsAfterStop(enabled) } + fun setAutoClearEntryFieldsAfterStop(enabled: Boolean) { + autoClearEntryFieldsAfterStopEnabled = enabled + viewModelScope.launch { settingsDataStore.setAutoClearEntryFieldsAfterStop(enabled) } } fun setLongTimerHours(hours: Int) { @@ -529,21 +529,21 @@ class TrackingViewModel @Inject constructor( // so a user's typing is not clobbered by a background emission. editingDescription = if (activeChanged && active != null) { active.description.orEmpty() - } else if (activeChanged && !keepEntryFieldsAfterStopEnabled) { + } else if (activeChanged && autoClearEntryFieldsAfterStopEnabled) { "" } else { currentState.editingDescription }, editingProjectId = if (activeChanged && active != null) { active.projectId - } else if (activeChanged && !keepEntryFieldsAfterStopEnabled) { + } else if (activeChanged && autoClearEntryFieldsAfterStopEnabled) { null } else { currentState.editingProjectId }, editingTaskId = if (activeChanged && active != null) { active.taskId - } else if (activeChanged && !keepEntryFieldsAfterStopEnabled) { + } else if (activeChanged && autoClearEntryFieldsAfterStopEnabled) { null } else { currentState.editingTaskId @@ -1464,9 +1464,9 @@ class TrackingViewModel @Inject constructor( val currentState = _uiState.value _uiState.value = currentState.copy( isPaused = false, - editingDescription = if (keepEntryFieldsAfterStopEnabled) currentState.editingDescription else "", - editingProjectId = if (keepEntryFieldsAfterStopEnabled) currentState.editingProjectId else null, - editingTaskId = if (keepEntryFieldsAfterStopEnabled) currentState.editingTaskId else null, + editingDescription = if (autoClearEntryFieldsAfterStopEnabled) "" else currentState.editingDescription, + editingProjectId = if (autoClearEntryFieldsAfterStopEnabled) null else currentState.editingProjectId, + editingTaskId = if (autoClearEntryFieldsAfterStopEnabled) null else currentState.editingTaskId, editingTags = emptyList(), editingBillable = false, ) @@ -1503,9 +1503,9 @@ class TrackingViewModel @Inject constructor( isTracking = false, isPaused = false, currentTimeEntry = null, - editingDescription = if (keepEntryFieldsAfterStopEnabled) currentState.editingDescription else "", - editingProjectId = if (keepEntryFieldsAfterStopEnabled) currentState.editingProjectId else null, - editingTaskId = if (keepEntryFieldsAfterStopEnabled) currentState.editingTaskId else null, + editingDescription = if (autoClearEntryFieldsAfterStopEnabled) "" else currentState.editingDescription, + editingProjectId = if (autoClearEntryFieldsAfterStopEnabled) null else currentState.editingProjectId, + editingTaskId = if (autoClearEntryFieldsAfterStopEnabled) null else currentState.editingTaskId, editingTags = emptyList(), editingBillable = false, ) diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 82a40f8..abfd783 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -245,8 +245,8 @@ 作業中 楽観的な更新 保存済みのアカウント情報ですぐに取得します。API 呼び出しが少し増えます - 停止後も入力内容を保持 - 次の入力用に説明、プロジェクト、タスクを保持します + 入力内容を自動消去 + タイマー停止時に説明、プロジェクト、タスクを消去します 入力内容をリセット テーマ アプリの配色を選択 diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 4603080..828d4fb 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -257,8 +257,8 @@ Bezig Optimistisch vernieuwen Haal gegevens direct op met opgeslagen accountinformatie; gebruikt enkele extra API-aanroepen - Invoervelden behouden na stoppen - Behoud de beschrijving, het project en de taak voor je volgende invoer + Invoervelden automatisch wissen + Wis de beschrijving, het project en de taak wanneer de timer stopt Invoervelden wissen Thema Kies de kleurstijl van de app diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 14e5497..13fe9fd 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -266,8 +266,8 @@ Working Optimistic refresh Fetch data immediately using cached account info; uses a few extra API calls - Keep entry fields after stopping - Keep the description, project, and task ready for your next entry + Auto-clear entry fields + Clear the description, project, and task when the timer stops Reset entry fields Theme Choose the app color style diff --git a/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt b/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt index 9ea1aab..1a31901 100644 --- a/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt @@ -21,13 +21,13 @@ class SettingsDataStoreTrackingRetentionTest { private val settingsDataStore = SettingsDataStore(ApplicationProvider.getApplicationContext()) @Test - fun keep_entry_fields_setting_round_trips_through_flow_and_first_frame_cache() = runTest { - settingsDataStore.setKeepEntryFieldsAfterStop(false) - assertFalse(settingsDataStore.keepEntryFieldsAfterStop.first()) - assertFalse(settingsDataStore.getCachedKeepEntryFieldsAfterStop()) + fun auto_clear_entry_fields_setting_round_trips_through_flow_and_first_frame_cache() = runTest { + settingsDataStore.setAutoClearEntryFieldsAfterStop(false) + assertFalse(settingsDataStore.autoClearEntryFieldsAfterStop.first()) + assertFalse(settingsDataStore.getCachedAutoClearEntryFieldsAfterStop()) - settingsDataStore.setKeepEntryFieldsAfterStop(true) - assertTrue(settingsDataStore.keepEntryFieldsAfterStop.first()) - assertTrue(settingsDataStore.getCachedKeepEntryFieldsAfterStop()) + settingsDataStore.setAutoClearEntryFieldsAfterStop(true) + assertTrue(settingsDataStore.autoClearEntryFieldsAfterStop.first()) + assertTrue(settingsDataStore.getCachedAutoClearEntryFieldsAfterStop()) } } diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt index d32aadd..1b61f94 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt @@ -40,6 +40,7 @@ class TrackingControlsRetentionTest { onProjectChange = {}, onTaskChange = {}, onResetEntryFields = { resetClicked = true }, + autoClearEntryFieldsAfterStop = false, onTagsChange = {}, onBillableChange = {}, onStart = {}, @@ -80,4 +81,28 @@ class TrackingControlsRetentionTest { composeRule.onNodeWithTag(TrackingTestTags.RESET_FIELDS_BUTTON).assertDoesNotExist() } + + @Test + fun auto_clear_enabled_hides_reset_even_when_fields_have_values() { + composeRule.setContent { + MaterialTheme { + TrackingControls( + uiState = TrackingUiState(editingDescription = "Prepared work"), + onDescriptionChange = {}, + onProjectChange = {}, + onTaskChange = {}, + autoClearEntryFieldsAfterStop = true, + onTagsChange = {}, + onBillableChange = {}, + onStart = {}, + onStop = {}, + onPause = {}, + onResume = {}, + onUpdate = {}, + ) + } + } + + composeRule.onNodeWithTag(TrackingTestTags.RESET_FIELDS_BUTTON).assertDoesNotExist() + } } diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt index 1909025..396e3bb 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt @@ -114,8 +114,8 @@ class TrackingViewModelMutationTest { } @Test - fun stop_keeps_description_project_and_task_when_preference_is_enabled() = runTest(dispatcher.scheduler) { - settings.setKeepEntryFieldsAfterStop(true) + fun stop_keeps_description_project_and_task_when_auto_clear_is_disabled() = runTest(dispatcher.scheduler) { + settings.setAutoClearEntryFieldsAfterStop(false) val active = activeEntry() val repository = mockk(relaxed = true) cacheActiveEntry(active) @@ -132,8 +132,8 @@ class TrackingViewModelMutationTest { } @Test - fun stop_clears_entry_fields_when_preference_is_disabled() = runTest(dispatcher.scheduler) { - settings.setKeepEntryFieldsAfterStop(false) + fun stop_clears_entry_fields_when_auto_clear_is_enabled() = runTest(dispatcher.scheduler) { + settings.setAutoClearEntryFieldsAfterStop(true) val active = activeEntry() val repository = mockk(relaxed = true) cacheActiveEntry(active) @@ -149,7 +149,7 @@ class TrackingViewModelMutationTest { @Test fun reset_clears_only_reusable_entry_fields() = runTest(dispatcher.scheduler) { - settings.setKeepEntryFieldsAfterStop(true) + settings.setAutoClearEntryFieldsAfterStop(false) val repository = mockk(relaxed = true) cacheActiveEntry(activeEntry()) val viewModel = viewModel(repository) From bb8197b59aae51bcc035d828c8dc47f08e693cb2 Mon Sep 17 00:00:00 2001 From: AKolenda Date: Fri, 21 Aug 2026 17:16:59 -0600 Subject: [PATCH 05/11] Improve tracking retention and responsive layouts --- .github/screenshots/readme/calendar-month.png | Bin 92716 -> 80163 bytes .github/screenshots/readme/calendar-week.png | Bin 62670 -> 54910 bytes .../dev/tricked/solidverdant/MainActivity.kt | 3 + .../data/local/SettingsDataStore.kt | 14 +++ .../ui/calendar/MonthCalendarView.kt | 17 ++- .../ui/calendar/WeekCalendarLayout.kt | 13 +- .../ui/calendar/WeekCalendarView.kt | 1 + .../ui/components/ProjectTaskDropdownMenu.kt | 29 +++-- .../ui/statistics/StatisticsScreen.kt | 94 +++++++++----- .../ui/tracking/TrackingScreen.kt | 119 +++++++++++++----- .../ui/tracking/TrackingTestTags.kt | 1 + .../ui/tracking/TrackingViewModel.kt | 15 ++- app/src/main/res/values-ja/strings.xml | 2 + app/src/main/res/values-ja/strings_stats2.xml | 1 + app/src/main/res/values-nl/strings.xml | 2 + app/src/main/res/values-nl/strings_stats2.xml | 1 + app/src/main/res/values/strings.xml | 2 + app/src/main/res/values/strings_stats2.xml | 1 + .../SettingsDataStoreTrackingRetentionTest.kt | 11 ++ .../screenshots/ReadmeScreenshotsTest.kt | 17 ++- .../ui/calendar/WeekCalendarLayoutTest.kt | 16 +++ .../statistics/StatisticsRangeSelectorTest.kt | 53 ++++++++ .../tracking/TrackingControlsRetentionTest.kt | 37 ++++++ .../ui/tracking/TrackingTimeFormattingTest.kt | 25 ++++ .../TrackingViewModelForegroundTest.kt | 11 +- .../tracking/TrackingViewModelMutationTest.kt | 19 +++ 26 files changed, 421 insertions(+), 83 deletions(-) create mode 100644 app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatisticsRangeSelectorTest.kt diff --git a/.github/screenshots/readme/calendar-month.png b/.github/screenshots/readme/calendar-month.png index a0147ddd266f07dbaf32e44e7b33ce8084b565eb..3c7f1309bbd0f49ad7a12625269738a123470382 100644 GIT binary patch literal 80163 zcmeFZcT|(v+BeLMGdhakIH-(7U=#%v1r-uHIHQ7yfQo?B2%!@|2nn6o00ja{6p&C< znn(>TKqv|lq=bl+B!qx~^d$690^z*_Gv}N+&vVLJ&+~onde=Jq5$+^+_P+YQ_Vv5= z{rH-Zp2#kVT|z=aBKnsv-VhSn1`!h4&i!FK@QHJp9Pq(iA^nTL-t@O+F~5Iyw0mV^ zV_I$F=ux`|-`#h=BV6SFOT~7-`$Qs9<2@7j6ZfNjf50kO95cobP^g={iT0#i^)sd} zAO>s3szt93WV;2fDrq6oa^6~PEN!f>QNID^5%S@pR|WrtzJ`+o6QAe0zy)s|V*kf) zT^erH;eN@hm~$Jfo>$zx#Pmb^^VojB%~JRSQYB||@s>=fluNK}z-*2CaMqUGB9W>_WM#0+}b*xu|Z$xz~$PY7eBMM^f≪dEjx$0+jOL*jE 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

    4m`?V%JnL{F5 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

    (SUZKOr0%;6ki;0 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 (!q0j7M0;q+yDI_6y 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 literal 92716 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 MboFyt=akR{0AzrHJ^%m! diff --git a/.github/screenshots/readme/calendar-week.png b/.github/screenshots/readme/calendar-week.png index 794f5eebd05a10ba99b2a28276b74189a65b545a..7122ab011a24e813cedb2d8cf59348059c9a4727 100644 GIT binary patch literal 54910 zcmeFZXIPWnvo{LTQA9;WI!Kc)y%!t3Lx@OKK#;0*0t5j&y-P=W550$Cp$Z5j^rF&3 z2`vN&NzRSW^Dq0n@3pVpJIC$y&)bUPx^uM!R=3BFKNSg7Aeq`)`UTyF)L|F zMMcF=E=PMx*%}RHrA3aA^Bb~OR``^TZ7U;EVCR>Egj^5clZ0gElIz*W!x&pK;G+{l z&T{tWIQQh)M-_Y58J#aN)Bw>WB;^`aXD{0-htZw=xpDb_^C~AP(gk6bIkcX;o$1#B z*&l2~G%i$vwmFVlT@xfqxP35(nxcQ+H>AbTJ1vnXj}qc!M$HyD;=})t@byk*%dG#H zt1>L{WEk;mtT`;<+#jNH$gkX2u_nCFGP*+G#@(FdVf;hfyHCfLMUaPEGZ@$3r{=A` znJw!p76>i=MlaOyOs|YUf<_fF0D-j4Qi+mmoT0|3IoSt1hmApjzXB$HacDqe{1n zQ8gb7bP7GOJr=D09Z`=;YMeK*fZ$?J7KpnGZtdtKC5vaVRh2j`htBNcLK^j@% z$dPBA+mB8t+YbKu0<+`=Q#jaj(s!RRnjcLUAOsNgZf2!2Y~KCn8n|Z?kFZ*yQ~4 zYw@jm9mU_!6^0hjV-vS&0=>`oYJLh7QgnVnZpd5HqUzafe(K4uqJ=hkyZ(dJQewdu zq?Z_cIoQ8(UVPYzp9Z09Zc{m5+^yesH;P&IK`>#Een^H!mThRwwN5B%MdVRQlm(GG zLlYkD*BPV95IjmKy& zew$bj5Bp%Pkukr^3Y*PTXIxhXZW(9bI<~JjI{>TvvpkFs{P@+WRl|Bnenor7{bNT~ zI%b*f8EbL=VWzT{MHjf0umpwPbcJR8JW~;FVBBr8vKNS0Ft_m!0- zhcu{H5O*DsYq4LVf{Pwahef5cE|ZN6ETN(TjUQzPJ<8eKs87$>@(?-hb;9m2h{-uz zdA>w`0(_xg^8CVcef=-$Z<*b!?rB8&9q!^+Y{>3BfblO$%xqeqeOLJUhdr0yon7H7 z$G9KA332JfWk+~)M`g%v=tCbJo$i9|ho+TZj|SL-JwMf2RaUJnE;&WJ2DHgaYE=@} zmL&qUpV~HuYCJX5vceJ$Ts)eP$MU0a`SsWaTW(qW0E<=2rdQtP@AmMvgwdjfShdtZ zgJ{dFU)jmqgVX+lhzA z4XxW?M{g9$vLr5>U$=cU^*TRxrWY=Il9c7GWl>?E<8rWtQ5+7!K-&4Yp}W{w(gZO$}KuE zQTd@}2d89?YO3{T@SDv z>T2j%RGHU5&D(#Rbk+4uOqPA3nE&Cm#rrg}8Jahf7;+mUR-&8f6}Fb*Gl^Xf{@C`( zyYAm&EyV1F1+lHHfv0`?KW@nTdX|{cABrs@cgsc91B9`IA*0Xu2NVawH|ADndN)+D zdox4(92l9BctFj-7E5{q>Bxbl@aL+!&3E%s2DC3O@(mio+VSnR)S(%2=FdB=qV?HT z@*Cf)7nV1dDfd2_t!Ze~35yP7-K(8dD`>?2@tm9{SuelgYr>_iocH zZdMXQzGByf140Un*auP_vscSo_!zmCK4sLTRa-uf#ZAt=rkIa>Zo~}&4s>ZHB)}`q z?CB2GD}R&UP&#J$4NskPMKrYcR!n!crp`?*6A$zskE~W$e&m@cc~RsU@)y^a9;Rhc z0j~`!1@Af|_9)>SoQ$kXk29jurMwEi_NkmQQeGFqf1N5^;LjEWOjYAtK=yt&4^rA= zM9}c?$KtTOgQtKLE$~0L>@DYIdRu8tOxP_? z>jPVEM45;&-Tv;hapnq(qGx4t(cISqGCtI?gdAU3bqv^!Iu(X(jK?t<)@*HhwX$rP zaJhA@APyZBKB>=V%sMWrNO}GI88<)M`Ou4`puOChj~)>O_#^cFzJ2F|mYefb-X||& z&f*SNuG-|;>a{tnGHR|Z1k&S`QN=y8d{eEix~f&X>fPaNkEZ=d<(b`As#UK%?1kEw zJZsEqZK)=-^_c>f_3~b5D@WEV)&S2ET&-pI2Tb8yi7RwueDeCPQjW z@b4#dfc3oOx)kF&w!!7|_cOgrnR~<11&t2*1`lSc?WjyfMkD`PKa`xQS(_W| zK`p)h{~&_=F9e??<2aqy{nA$f5s*y&wfTQNqWv$?^Zz=I{-3t1R&|k$|GllFdjaav z=}!?;33Ti#Dm%w*JE$vp7Xfh_UMUM3G|vnyHm^k+W0gd@6L(BfW z1|l|&0onDoQEJ+rxrsW0rftU@JD=A-!>LC8xCwSp zv4P(afrb=7f_Eh_UHmpB9F6$7V*ZtRVpH{kH}~XM^|ORVP2!crr1$!~h1>D+aOX?# z-J#8y)sp0%%qNIpv01Q{=ej0lq#vo?#H9G_jge|5wM_M&%qRB3r}Hux6o;#>D$a8- zrW7N<7S+;{8%%Eu_=`I^TYl+K5S7fc#|S;fFg@2l9*XDQTG*h~K0Dn7?+N0Oj^(Fr zUM_VTr=QV*>@ui=^ZycyY1dQYo42JL&=Zl{KQbZ6D0O(eZtF>RrwY&7($Y0%%;>*y zU22<0btN?{8C+Xw1mmHSaxa9Q9NUBj_XR6L;7-%NN?^UL7w|M$qCox6DRAcVz0SO0 zxt@vbNKtkC!+vJhCA=HZmbl`Y$-Bf@|u7CCM|VD z>##Xy&PW>ag?b{6gffII_Mpo?OK7q;kuQ>G#aOT5z(hdMU4y6Wh?C?1Xqf zF@uI)nVbN^KpE7UJ!u#=1x8yJaUXTCCjG;SLo2tdP#apE=DAGQU8j&K{P8EpD~&~Z zh){>+s%u$oh~4V1!gRmWu}PTAAl3r;@%>m7{+p+J<2)*1xI_AIIX-D?$xHtC$8j2} zbkhugusZj};h~0hG7Y(q32flwg)a3ovh4Mp!lHDqjTL>$L^i)Q60^QyZ?EMvktFFM zj%wn$KTGT#>;5Tyohf6%vnRN_-TOUxdiPtlg6kqykK3L~c?$DV$P#mck&Wr5`^o&J zNjAZbn?h+UE8nFLnciE*#VwA^Xx#j?UO2N&<0>RDnZIXwteOY-Ekm-m(NQPXqMMSv zPV_)}^_@nqO1}QyYG!8P)@Mv!9-lr@2tReH^;P(uh@f2GcR<$jZU-Q9A1WHI#q2tuU({{b#i`5jk6Rf;Z7dEx?a$vtz5t>z^Rm% zYe8H2*I^)28Q#max8kzvHLFyD}ao?x)*nWjyy-qnhnc=7l`q98O;QTUchyD;1{{p)1vet2DvlRH=eD+k57I(sAt+MuKnO9g9*sKA5dn6C})-% zu6Xc=L*UUu^S0bD+?1>;Im%kWHN(h&UnuXm$hS}1Gw$Xd8uDb(45e~9WR zZTQ>_Krf1sZP_a%TRR?23WO@yRLt4ysz!7l3FncgduIsYCF38k9w-3YQ5PvIO!8=V zaNHV47Wjup%^q#T_{(0e`{c%58#r}aMx|J5aMW!qkF1%@EltTlG6Ojv5{8c3_!t(S zT=6iCMB9Yo(TuYDs@!L{kG-pq+|#aQ_LivZWa|Mgbm>?Tq6lv5dfG>oO^Hfckr$9~ z7+f$*zBj(Xqu>;>8&weMd*%Lt!b$ajL?0y6DW1u-A5wV*9|u4i!2CO#i+*9%4J6Zu4|8_spr!%{gxlt!I=2yOb<= z|K(;tcWN~MqLMce?_ws(+$ z>+=*ao$=4^e~_vMZ{_g+Tx@dv{l)1;8W{=vpp8c1TR?N)%TDGm{!6UaTvI2;uptGD_;NqXxp1B462h!IJPI<>i)T9- z?aSlWl|{V|*w3a#1nxCYL@Km=iBX#OU(x-eZt8dEN)|$_zRPDnCRYRcZA!Yad7gi38w=MJIbX&Dn?6Ic)o* zFrFYaSefD{Ju1wZVVdqora1{cT?d~(gY}SGpP}l?V4P$tGdS_$-!j}>q@;xAD3 z-R+Kp?E}R{t&s7Gp}_-V;+#XahNVB}$elo?F7>l8MopO}pYf2%9^tj+r^bNUOGh)I zW&iJlyyLd07dO*PC)4yYORGb+@gWr`F}z(IqmtRhz-}>*t9D=|iz$JNb@P-clfZ02@^9 z9I!}f!|~hvp)EF*$41i6d?TwD?o(|6jL0|8gM-+Lg?`;Dq-fakuk>oWayy-4Zn{}j zy~B9%!yilgPup@q=J%0I5sOLfsr@Bpw;e$l*W)=Fr4y(R;6k^pw%(<@q9P90^oF+E zfS-jAl2XZn&%BVo9#@xMrDibPy_SLbz?11Hd-_vtwZYj<0la~}b70}4#>a18Sl(4x z)Lh*F0$(y!jq@@$k^eG2)3)48EJuvi=B^jabZYhnd#hsb2-MDa;XEM}3Kv>l5>=J|iSxz;umLvT%)&p+lCQISS@L z+wN8>^m$9ArX|}ndHj?V6PSEwn)wgYkaexA8}tzN2{j6DWR~#EO#|X#=h15u@*yd1 z^(d*^DE?dkrjo~2_IiGg!vCYP$N#i+4PfU#uhaZ@5sVwK z!B!Rn)RA;P{gV>?cMG0y8T@S)^}q}va`K;?zH*(LMS$7y@h+b>*aPu@N{*!Gm( z>NhX--6g2EY7VJ1wnFxr!AJl+F99;~iK$^Ai8VTJW08A8*Y>@bLr)^65B6+7S%0P{ z3t}V!0GTIC`yNP;B#@>#L?{<<9JBd;9YLjStQHpxsL1wf$Csb6v4V!y%o_mjdKhfP z1g2@PTIZk$rAmR{c2%8Xgm zko@S(x;50RWPcuWSR%*Q@l@oIJeiW;^Hsl@%qd(oJ>N#k9HzRGr$2AOd(dxgdj$Sy@{6IC@hng$YG6?2jW;l{ z&?yzp1k#U$R>r6cH$H5P%N`n;RYbewwJ)5O?LtP%0l3r|C}~x5h@(GIsNG$NynPYuAf)aGVLtk!&?H9$u%mIM=(UwII-y- z+jx0_5#xHwAXyD*xH|d#OyL&Ma17RdM_Ru8b?L&6t+eYBdA<8$v|48RS(a*ICV}}v zWR@7bUs%}-SJ|UGiv6`1x%d(Llc5`$A4N5ijU0n ze_fqz&z|7tY9;zy#U=y~z!-W!e00sxd9af!4^iEd?OHc*eQG*ps5K`=^4(!aqvnBc z9M3+sQ8*scn*AM{P;R#u?M9CV#NWJN2s*&1k4=k&-sVze@$v14d%vn4w&$LFWiXa$ zH>+tQyh#IguThx1-(p+~T~!@=E6tC1^`PNm?X+26jx#l%NGJ?!s3*TBkRO0^c7sFB)%;CnP_R2*D;`pz#5^VT6zDNeWpE z)C|{VvKkK{0@hcz(XD2uw;qnkL- zETe!Z<~|L7DbjKJEHULz0OlRU9X`&DCBIwRwRK+5*z58IQqPT<<%bGZ@Edt%%c{ z*g+BnCQT~~39u*EyaL-i_s(rG(8?%&*(W9qi#KwY9DaSCkks`?Nc!-dquTi1M}|xf zDyzM%Z0jCg;-b&SdKqsY@dqB48nEa#B&a4kbez6Rx7fJg;bUeQe~dqI`Fa+7wc)?f z3UdhCEF%*@-1^na?7uuqi&bFM?M{7!uV6sPTSxwA8cgd+N zpIjC*7#F8W^<5+$5*7`>in68~xISNAOrAZ4D{csiDDje&1}agdIZg|mKsb?ZPXJD! z28vBMhQ|Axoq!5}F5of{)=2+T3dcL7B{r)m#L`?3*|O8O*+$oV3AmgIS<{M7rB<>U zNNY^^nAufPqB@94*&Ku#&0Dgqtqn#BfXl+LDj=T*yvv06=_v;&aJjK`ny!(>t#m=g z;2QMkb>7NA#2|jl^b^Ph79Bf$9~Qp$i_Zex+}C2uaI8&-MZ5xOkx9Imr70puDb?=K zvg zxh|2Dgp9VVrexx%IPF%vn96~sf9MGdC&FhTJxY0S9m-rnO9HG(#xSeg?#dSp1KPIn zf_r{25*{%90qKhd!4eMMGWz%4*gQ>b7T5UWGd(z&Gg!fC0TMp3I{|XXCB5wBSJWZF zssafwa~r+3K(!CAwGmTChImPPh_&p-{nE~*&aj7eb^Ah(YPCRedkL01IZC(+XwO>q12jVHql4=8h|G4rysVbcN2_8&&6|@Na=l1T6 zulH8kaM=BydBZn+fPMqLoS}>vv@|L|JgA$%5@!>z0arWbC3`~=ZPHFLj{Vj0Fg-$S zVQs_bx6!CLjk&;p2=T?tLgq1k?*d~pEg!gVcB|$lqO*%T>ToJIADURM!ZSJ-b5p>r zs_!e>!#wezHTyl*1b7u-_bZF5=i6u+%6EV+Fvq}ioRyB_1qtqfIl`;CQ1!q#Vy{Qbmh7#nR_r~U&vjO+zI~~QHf5`w z$`uyYqHonGjCS5<2Q{B8CJzLT4qU#fJZnDzNP|Wu4u*Jcpf{N$#mUgeocMq_HuwbT zH#AsFn0RzL|3NMD;h67}I1iNt=;~r;JAm7XNIOm5Ko%`r@)^d*P`Ga3k}sbmJkdIVR@7+$@|^Lx@wIZ*5{P&UI1#6da>`fWxO9C^BR=>DTO z_2O#s>VfV&Bma~zq^U1UNY?zaYm>1ZES}Q-rg^wTuo|E20?O+vH{3cOcj0&a!ca&M zfHdB*4Tp+Jtmu3?t1goLs(vR(ddQz?T@$|qavPN)&%mNiVniek+9B9 zaNj|2(tY=bA?Q4@D}1453yu=&s~TvH6SQ}3u%>-3$NB+jt###?YPKm6FcL}~xOJ%N zE~|+Gj{Em{84$lNwtu-_yP1rc#mD|6B}BD3JPbTqI_KZB9qfAicDk%8t2(AXn3Ce~ z7rhLw&b?@_vaQPqvnLeQa3%i~>?VliSV>wwU~aMH~b({RnYgoQc=_PHY}v?y{T95+--6%5P?rj4oYBigG9%c z$#8dDy4UGY1F*>ElOj^6?D&+WHRd>!qMLBpqV9PD9oT)7UWPHP>*<8-J8~A5HDdTU)!AX! zj9%!qujg;fDnH0i>Dg#Wcc=fZ!?^cD$(%=RL3Fs_-J$)CDNv@I>5Q+IpdJD1dakbu zfXGTlSre3g4igpbvhx&ABzVLxm%i`FYU6-g3zMhMNsPpJPu+0U-fzvW#G0i2&5ybn ztJgr;oOhAYc7F%f2xi@-m`#q|ooboGHU09kM*VcKPK$|zaY-6SS+3*?G z$hfL+J-DRSIkiJy3IhClc1|e4A$PewM|&z1Gf~8l?3yjxAn_EgJ>W$3E zSuTsrK40dW)n<-;Z%@}hD$kh^S|v>RbNgPj&}cBVgtFb#2N)bu^Qx3U0=G|~pasGz znH}>)smZu&k*ApDDIN%0N>JVgOmSmH5x}VKM{BW@tiw1q%-O&BY*3;4WxFA4=}CXF zqkuD#0@x`b0PNg{VomVSEAo6mWb%!{)j6bnUML0Bd*BJi%%JyCecE=R!R059u_~3# zK#vcAwbN>_ttvOF_kvQitpZCusW>VROU;*d3?7VyN4>gkj_4Fg34DGE{$1G^!{f|5-C=dtj9KDS;*1@k6=41 zb7nbv)12)(Ax9>k(<{n+OhG_;F{(L<)pS(-P*~T+m(~796(ebj-WN*04 z+}7&>GYT_PuWz(6Ln_-%A=q7Iz&)Kj&BJD#wFP!J7xm_f8WYe_TW2kx8q#ohxCQ&=`zFtnDC@g8VQkVf&`v&NjWd))vObCoNL zJ`W6b5PYi(qkFxCPJNbBSs-j+^JuMYjXkk`PH_8y0%2lTtU`o75wY<~PXhPv+<^e@ zjFK1drts_WU z!+MZjK?TAvbfk44N};k99VlfeJNjiYT5fL=aGDF`-OPyvUTTG^Y6e8gIfITTUSCA~ zn0)%RDcOKxX4)>n;pL}^sBTp!^JZtb(RRGREy9F+&GN1~TU?|a1ha*OH+b54<=wj| zi+VTack$dQtoG+rZyD~D)_-7Hod;H)M9n)A#h!sFID73(_$P zglASY8MWkWAhCOTE zj@Xl*rBEH`cJl8sf&EF$U^7aVuB7zu&nDM?bbhd@F?CA#^5_O;sRTg?jgdo#S*t6j zGXGl0o^8#Yxa?`yPL!uT$q~*Zt6|W0X7m?nrjebFFNBE^ZUZ9HzUv?jWSXH9v2XdW z1MO^xhzB->n6m~n1&P?WqTyDbCwk&q-QrQHw?(RAI_7Wygug~66CnE5n%^~k>W{%W zyP-g3)BenHN&wL{9vc5bcWRd73tyHkcj*GeASY{f(b#7XREk2lm{v5VQ1tIrwv0H5 zIl~*I3}Gue5g8OzOV0WuX?p5Ecc{_@^Z2RyX_JNhtQ9@FF+;Sj5DR6w=F-6yWO3^- zO%XHZQXRh)aQ1G0^g9ETnIY@UTmRBe5V*t#Ba-_j?0PPFX176f1C#prGoGYuz_AAVQaBbeX=s1Nzk@t&4ah z>IaF;o|ZK?Eixf=+Di*D<=e{(!==(JNP(@PoqmT)m_tPlD%2YIVtlY}&4v957uf(@ zTvzL?ricy@Ea-k}hK!4ZPQ-f&Z5`Or=GhjK|F$#82H&O9|>R zEU$_9Qb=bUy9DpS9rG3{`x@prf=c7*UXj;#iQD@j38e$x&$75H*je&9I4?!$o|vf!QuOV3ra zzDJD16%V1x1(^TbZYEKnSb zFXA(O#}2CRstla9b?ZIY+0vZD^?v?yZm`z@L{l_iJdB_^p_w18`}oHUu5T{~sOj3( zVG=^Kh%d0;MlqQ6By7|pJ)-gITX|7{W5|dS&N&vuPQSdI$-d45J ztbuBlDQm(F@s+*KtEHMtlF1$sn1;tG<gU(vI)-?q1GRc~(3U4_pWg!-`<#Q{3_T zYDfuxR)D#*+x%#A*YsQ^eZPb>X9BXqzIjzMJG3n&W!@j`qXH`$(eJ&=MZ{&^KGx3D z7cRL`*E{$Xz<0VnHt^WffK#pc$wc8+f-zcWklAVms)Iw~Wju~z2t6|6WEWwN$*Vc! ziYtLGr8rexb~wftsHWXyOXyu8ygNv^z4RvSvqO0bZ4pp-%%65|*Gb$&{DkXfB?gy5q_5HcvB zx;8A$n(D{dSI_V;p9$rCSGj2J)z1ZFXB~91Yo`E_m+JRdEp^IHKX;Ct8gv2nYG@) zeK3=(wxwH*PR$(QbCP@@4qqT8dAY+q`S1zMGs*OIMi8i3A(T?HBr{m|B<(;R&T$U- z@0*hk)!Oe=CW2>JUy^F3egK_shLDlGd_XP3)#&%yGRdT3@`g95rt*5=C=~`uLqhWT ztu4coz@%X=1PK#gu;EGWyecV)TGJ)hyV@(*fe(5ooafa}v}~5LfPtCMQML@m*92Et z!i7juxr2?-ML;!430RtE%=+OF6Lorvt`->y=U3oKoq>A=b+{l&DqpY(8U}og6?n)! zFn|gdAo=RJUZS1!BWee=votx24X4j8z&Ir-{> zjuP1~zF<>y<5{^MSR}y&9xWbw?h^Z`1_pYbWYUY(dr};=R0~l!tTddurLh8#uFi3v zD|iob0H!d2qe`Yvyz`=M^dFOfc8>1CpoBVebvAo`_`=PMG*;vzpLIz=ceYmg+lQo_ z_=|E)uP4M@&=bA4Qf#>#G6U&ij&_zzhTD4u&_6_^gC89#ZXHrY2YZ$>E%&m9>GiIW z-O4v0ETxui!}?7&Dv#CKI#6Wllqg0e+#4gRDJ^s(b&<(%^CU~qSGy&oS5z>GW=9KM znm>N;=+G)^uQFI8aM^gmhVPE!@4@}dn(Y*QiD^EvF1|K^(>(f|SQSW>fOR8i`6@yd z)l6$+sarL5ZykUA7taDJ%Xgla^h;&aAWN*bTt`UGX1=88A13V0@mj?5{8qRq>3$8H zK=Iz3<}k3BGTo9l84KN!V{Y+g2~lCKPAblfJauVN+p zqupkv1R{J@^)X=({Z^gsAyYE``J5KIjGT+gD4sm_my=5>OpP$Jp&9sh!id|DXG8PY zAm8kf?N60-Nzo?66!dsg!?c;UIW(AWR5hJr!rDsCwY0^1R1X!_m0-H~wC9TJ-N?VC zwMZ``{dDfvY2(m%Na<|1NMy@{fsUzbPuVSsKeSI@lAbi>P|-q85gdQ^M>A%roO-Ud z$K0O2+TLalb~-ua2OUg7@-kUXkdi~P(_Fy^(DQ*`8C>lzaWBVhH^+IrEpR=k$KG&= zy6Ca2mpzi{wd7* zeu(e3^ygwBb*tJyLDnul%YP^ja2S{a(bA)y1;5uBLY4H0vg!6(FznGp1Za0!}jA&#(OLbx%jLx-|`BNvP>-*MVWd8>PH1rOo!Ku#W1$u*6__(6>@Wvccn_Vdb~_ zFZv@6JvK4ud(m?9GX^*DwZp|_8CzEpJ7NmsVcO|4ib?NYIr>*;NG#BIHXwb`{LTVD3WieP^n4YZXwsh+ylCE&a= zYS6wn95gxp7QEfl`9;?br=x4?>AtIn^U^n3moL}*1+cGBeckxZ9)1pAfh<{-Q?*fg z(z5TBdGc0H72Pt-r@8GiX_BopbSIZyT_#O4k#<%4*iU2bn8P?tV)>)I-Wk4#8*4p)9L4@6M^m)y?39_;N(C^OmZbh! z^OsI**lSDqI8XC>;U`t{C-xqJQ5$F}YaPVYUX0aNR)BJqvYG#T(3^u1z<|Vku;m^z zoefUDZ{{$HrQxhO{TvK$=LUMvxC-_0;c$gH(abg1glEslx`#ap+cpG=cxNu5KDEBLglaJqA3s6lWr+Gjg1&h2>7(O)P7)anfmSXS4#e?g`hlkR_> z9FayW-+k2lmVK+f4CpTmt$Fy1*NkaY<4p6Ex(Xcy!UyNC36_;KD*tjtkNPE!P^$e_ zx00M#w~&a^B`EriEAfJzXZP&%*Oy$;(of#V2J05)H!lM>cwzy9G)b8l%#uq-Mv`Q*P+@2Pvpwo^iFbA>sXP~n;P37HgWgyVD*5Tc$4IhzB9cYG_CB1=2~pN-v#EA zxc=RU)ByufjbE4wW-2Xv30_A==wZi2V z29(Ms?!n)W1A!%44p}zpFWXhNPM9Z;d8JXQkzM3`ONl@$P7n>a}9xE8W1)H^E zegp=tTIe^pGxyR0IhIMD5W+z%^XqOE4O1}5>x1{quDFeB05Q>-pNdy1 z_Dy%+*t9{0p!398bN%V!Y!1b?uY&hZ*6`O40aTYdVDxxL2z>xxjCB$dgw2RI@~RrN zGJ#2DOS7HA4g}J~@*g}4dngQP;`e~H6(V~j)3Zk(<$fQHwGn)uymePUuEZy{hxFe( z=lQy)LdeFo*Hn%O;tA6`i~G*>Td}w12gt(D5Tux~D$JUb@N;wv zfeo~Oy&_VAugXI#0x6~ zY{}EJY&nhib>Dfen@!zZiV@3}Kaby$tjA-C5d3M6TL^eqIOrbRLQ91ahcD-!g9_vQ zz*71-CB^?SU)twy10Z)i-_yW{573Rh7q2*VbgqT&MG# z@H625>0Hp;lg$k@oNzogOq4)9xVd#|V;R)A&UiMf(v~gjj=z_=kk>eJ@z>vKponPM z=i>f)-(;tEUp;X0&o*ZjcG;?C;;$l80IT$CkOlAn8Y%ZFy2e?DI*M3!We5fg6FK4B zd42C$SQPp7#;s9@Y{fA>ht{CSFZy0S9s+R);0|#WrO+?oQHRvBf9cS}oTg8L^9LH7 zZ3xKDv!t2)f_}HzyT}$7XioWA#LyoVeH%;Wa(2TK0uJ{?DlRx#2W%+kSyC$3SoJRp z4gsTyOg<#}S-RJ}!oL^U1g{2h{c?}spKQWEJg1xg^JZ7y9Ptb`U;f9AuWXPPt;o6x z{0E;VnHZ`X79D=@AoD53u-a}?9sU5kk*xiZoX2f1{RwvUW~bo2XV#hG424X~B*y6W zV*`b=E~Un;c`Ei8p-Esyw+v`sE;7M-U{zcbTY*xC0%a~XsSkGi$J#&_z89rL%}J{D zO5;vFufB3>IxK~>H_|_R@aI4`q^odlJu}iXrTpdEc*3(%i2Oei5Z_ytds>`Lh>y@b zuvzfhD>d^i12dMb$BaOf1NB?L7R%oLP>-5o7;f7{;GSS8^Dd}81xnh$nEy6Ka&k|G zQ(|l3P}5ME-`BVv=4Ak8_!A{g-eK=HZ~K*^_ENyQ^}#jRJnL-3I{j)ED_nUq7Z8O9 zFkwHhR=AkD%DgO!{h+4>_9e+TXzS|cc=$xw-|zF15FE0%qYr2O1q2>|jiv}Rm9NYc zJXz^ci`^A^)L{j3o9T0+!ksCKi;pFX2PeZ8Ar&Y}`wx8e{6K9hAva(iV;>nV2j8?74k-=Xg-8z4qM|0?-(S29uoNfkqf5b$3L z_)Bx_v$-wUVUR=ioRdQi6fpRIZK48wA;Z4PYpVFYI?Er$WRh}?WPGT<@jTjSdru78 zW)rTi{!az^1>X5Q6Z*s0?Wa?o{yarjnL-@HxSB;_Vx;oqBJ;3Zi zDIVZT#lRlkl!^u_*ixg5oL&IZEq#8Y6lh#pN5EGJJ&~Rhz%Z+V&vkg~EZ_kD4iZo8 zQK_nRh^Z3;Q1I7f!J?{AuMj;9XnP$4{Cw9h%ze?AAjnas;6+c-uQjWx0^P z(rN2bZ#!KvMmy_%z3ZlQYNa z-|p{N30M$;0kITjNZ>1$f2dsjJ@6`N2ISqyHIGveXaiC`!tM(==b8vbx^D)_p(-63 z9(kfKzYFPAU9RCRmuI(L7ciE zrAjDtRz8R<1(Jz8woSmn+cN?K3G^Yzv?%9aE;@*>0^pMAZ#WhV$*X(7pjT`eEE|fk z`g#5WjeNv{#it=9oKl|3rrKYZ6xaJjwyZ(LYT2jtYXBfnlObbyX{;ow%Nht=eEa$; z++E3HGnWEnJf$1<1C-6TZlC`v)cHS%7UYo|H^Og`{NnmIH0lh#yP-)+O~0P^&+sNS z*wclH48Xbm!x!71Wc`7ymIckEPyP|xY=T64&R&m!1C@h+Jf#M}FKYh6PoyN5tjW_a zO_wQw-Co{~Z!f`ufk~^2Knyg^-&iPKd@fcVXIlB}zyx^84m^zybn`5|b_UL^^Xn*i zdC-xN{8F!?sfG`LS3)z@-t;kE(7glTb7$uPfPu4_;bkq|w&&HDO<}FI^kyB1prS;9me*uWevB&sjArLqzHH|Xg4AY`-vzWyU{Km-Ls_IB# zLC!Ksab-Hqh8F#Wc$Gq|B0v+AoFyWu><{Ysys)IYm&8zE)DfUiKDhXFs68Jm2J~(- z{-@Y5P6s;IefFb5B(8r(Sb<*e!ra%INx6c(5-0M&PhF@v1E+YOyqc z5kOF?dEB2A)g`_OQsM8B>j7TYqzlt~w+U*G7ngejKNJM_{qt$>Z8j0b+jM~DbHV{F zul1v-oVE{#4|vrB%EAeZG;^6&Gh?SGb%(N{`e%DS0`>&%jUeMkvZt@Ig?GQhrGX8A z`F$FJ)c9^P#jSXYhu>%lPMXO9@uC33UT*n~6;#k5|5BZLOUWP*eXkf;ruQlkd&rNC zIzPCf$t~sS>{)QO-59mZ_1Hie!6h@_LWT8kXZz@k7+R2^mjOVY8Z`j)-vm=+TpRnC zm26(`R}s_=0&dgG9nQ&zr9t`*AOY10bLFT9l*T$LHpdyu`=U0f1sT9zpWoRgJO-Ud zo&Ap0E$%SAH|zWWZ6s>z|GS^5`d`W`66~(DC>hhOp{)wq4K}C5^@~aePCoA0an3)# zvLJp6)FL0GSbd6iS$MFOU@}MGCfm8^MyQ7>1<_ugV4#z z?ARZsm3J#g3Wc|T6-e^cfgg}~Mc-T_9x!C5&iU?|YqU~z9vB9on~29f8MznTp&2Nd z=V6WT4PLuQ-)hq#A;U!v|ITNMK+0e0kS>`SoHY@W(KrkM^|zk=wWR)|aJ>;i6ugU= z(d4^ah06_MqvqAybOpC7Nl&?s)GUv<)JF!Grihnqq22hIU4KdBz)^^V3 zx&K-T`m6n{#84X6LM5ll0d<`z=ITl^DJTSMY(E@e{buVEV6w40&8A2RB0#T0vJXTl9GgR+dLq3=uL`2QD9gh&o8gi-$2)K zD7s`BjknnOc@TRV6lD$h&R^<11Ym8cX*R@x6U-{_iv@218}R;11Wj<&`v;XIRw}s5 zMZx)H@>H9%MTrJ20qxV+&M)U2whtO2G<0RBksgRy#mYjBMlJ2XHnwxCnraPlKsp{E z^(~s;cW6W1@}ejCi&{zz1%@Y8PWu(}C=>B4()-am(c(;h2_U+@t8nb~J$Qp&w9?2e zF|Axu-Vxt3HjI1vZMg>oTK_Nh-aD+xtZN^|K}Dsh2uRmaiqceiM;%2(Ktw@0sPxb~ z1fn7!qM)MmrXYy)j+8`dq<07{kzPXx9YT_`6Ln_Z_nrC9cg}Ub^ZWjoKPH#gkUY>}@EkZROze|+_z z^b2OE4+0%Nt(n7av&XFQG}T(R3BK(O?eNn=Q+?SiLJPfaPjv-^KfTSnD|P0_@bG({D-6)`ywrqvTo-&e0*bcs#C0=R-S%=XV!%HieNdi0@AoOMwcq=5e1C}r-vxR z9#rS=9)XO6+>1&>zHEBrS-{(QMoR^etgk%PkL=sx;$04i;!opOopWgJrheTHe0{%m zlEagjYis5#3wsj94k}Vowb;wKjmDC@hwfyx@3}hqpqO%WUqU$myX`P`PvXV5x7)^d zK6#S^?`ZWI9%)WhFQ$s`LGuoEuE+_(f9qsZrY1 z?Vqnw)%KC&;0qhoQ?F_E{PINg-qEL-LEvBYCmyLDz4lA!MOvFns>-nMvJs>OsB(?q(-5rITsjTo1W z9p{x1O;z#GP2;M~aV1&EVp9--g+_?ICjANA^8o?`9kv!j9QJj+Jp+40*>DXtb=Lfw zR-}M^G|d~ zb?y4o(-bF}>s|;9NsePk5lF5$%fKa-aSrv1FDAch=1EhL9{=X_w+U_0kun<9g@e-k zu4@HI9G@(Y_bz1iqXd1RaEiyciX?Z;X9KQqc~6@$(monPjr=pOw(@G{Cd9TcvUd93 z&*1jHAsL*oO9VI5YYA-o>Y`gWB{RZ$^+mFtO^d?RB7I$(eQ9vXu-OffN++Wje-dlR z`XwAbRhuC!D(7HU*%IS|=OTSs4(5nehsv6qpP_!o!ALfqt86 z0;W3Uussj^?bP!*yhlDdqigvs+EP1$kY?ly=Y6IPf&wy6g>$~#8&~XvZdOZTLawRg z-t-cZXpdnp#S+S$;WpdBqhnuF>DcU;GL~)%B)aNfu;G+lORIf&$fmjm*>Pj3D^wzy zeaVa_rNmbXRjT(n-_gV)OvBQuF_)Tw7A8rf8i<MEMUNT7tQqQxmN6`-WmV20V^_fdxC%4CP`{HZiGRn>S+g&_QVDc2=T-uX--Dlhe zrHnV$jp(snm`eWGSD#(+E0>HU0^454>sb%1Cu+l#pYy^D-)XBo*7Q3Hp-D*qdpYSL zh3bujXRug1t~juZ8b&3;&{Hz*c9ok2Gm#UU5VY<`1>63SY{#9s8L6~fVJ23Hmi*N2 z@|v4dur_=%Z1CZ>^W|$2?LOu0ikr>(ggO1X%SK5|bywSkieW3&uoz>^{mLZaVkrq! zJwg|W=;$7{gXzCA?@0pPtU?*h`{K8r>KorMpZ$t&`t-n-nCT`aww72(PH+*h9@gLs zI@qJN(7W+vY2bAQE3>lB$9PG9PfxUg8@uH9#Y~%cJ4oLQz+$!K8H@cmF9A_l*X^N~Fp%h=-rabdZ3mJ`Bb#{eLq-PY~A3%F+yNblgVzWNv z@%gO9PNFg}YTNXW0tZFTI z(do4lVm^-5V3<`OWBTz!!FQR{#mk-o`#mnA1$Rqeig z+}>3S&M3yne$%p75K}zNe(G8T(thqPOP#tR?`3`8Y`qgtE%=qtIt&iB$&x7O@?b=* zJ%&`=DbrqBZ}4figs*u4LlVi1m`Ogjy|~<^ZSAl$oS)h$b7#RVjm^Z%TAC19hQ+hX zufK?xtlr6qh%DVyAz8?}%s=|Vj#>2~C}1?gkz^hP3(v95&buJCf1^9~xJ?Ji#Druz z&UrQAoSeZ^^8tIa)9V8x{nd}I8eho~-ZNF~Chl;}L|;-EW$f9P({$r9_itvD+pM|lZWBSm}t8tSkmJWE-?ry)I*)gk( zTP4bB$E>jYSdMYpC{oeF zwMGE9qaY)&u3)+?xyI!UeODb-GR!Q(!XvZUTBfOFspVcYgY_)atc~!|^oMG$zlu+cvDeF1>7L&#h!t}(`ij{E91Rc4lwLH7~Ti&bH zv_+R)qJ+%!JNkM2A}g3x2s))lht_%Yu2rrz2a*%#{lkG`M8I~d&2F%1fE{0Wj+1XF zo!O|?m$il_h~ZDu*$=$W-5Vb$%KK96`7%jOMWndzXy6UwA-R4JsIg-&%Am>m z8FHdhbi3jsdd3@%xv$?UqBx>m!yUj`v3r+`-k+G-sNI6@2*tIe zVFiEtvYLu*`A+i>h7BB zFxr6g1;2>9`B5&R;<7DR*@r#9D!*sFti|vv{#7w*qkDl4T>~n0qfO*SjNq&wqU` z=imb{m>bPC4dbr`l%TnYXf8^T+PFBeH z(e^pqS8>Nq9R|g@{juk17?nwB+1Q)O6Zj0XrlH7%o!Jlr=g@wo@+@8Qnj2C%BiY}_ z71I3NXDm=VKuivfdl6CVQkTIV!2E(AMWZSQ{O#^+^ByB0pkhk`dXgI-M1T&{MsVM4 zmxV)43b0{@TP$sWWokqR6CK1Tkd7N?S^EsSHCY?uOh=Ex3h8me_8!|>E zfEiEt3R5dqp&Uzf5V9H8SbcffWbt*j=@-qxMY8hv=21lQuGdup)kUUU=Wc#z(Jz;g ze!bbP!7n8IdZIy|gSwrQfo)$bBJ1#iY;@gkw0D!nH{bH@?E&SA@7g54KVFvhMDJ~l zU3lxrA2)RWatt$gT>71?bNcT1=5%8GhQJS1dCe5_I_MXs3pVMT2Pp=P1n@;e8l zHiSN9yZ>>6a%WYuL(=-_a!KeeF_{^$?ngeqyTnH_*b*d^RIysu3rzii}hd$E<@YKGDUO$Ed=qvsN&crf`)u7WQq5+XMyopA)XJ!r41n?wL+v zWVS@AB}(Xyv^#RB(?wErwzyBbUa??zR_oQSP9*7W6WD2NL;+Im zT+dgxwj!;GlX5%Rtev_$i@XhH5Lb}qZbMZ*O_zQ_;3rfLkmr%GmcA?B^5Wy0&BuNk6k8KvEPtPVQQz|q--Ra-{MxW)I(MD67)!``vp>E(Lld5(KwTlM@3w8k`$^?QnA*>j&5@dP`V($3AS@{#gnEyL7NPhI`}&1j#F?REpWDd4CNT-|!&ixBB^K`in1_p;E6=eAAuEqU&9>JuTKfy|)iF?D=0$jDFs_^PS`O>`5sx(s(ph(Ed9VDmBVf~@gvw;WKonw| zk1S&hT_4wSa8ZdvZRo=`5p~byti9~AWVTo#&!loX**AoK!Wu;dn|Op@-(;aH#4E)Y zv5Q;_SE-u7pYE)mKrCyMecoy1XNqDFcm8}c!M18?j&m;(q^r-x%s<;Tml4Mx-YRd6 zTNholXONroaG0}LxSCFt%!CpruJ3mxW6_F_W{A_0{akK$TYr+S z(r25La}4v@oAjbAQY}h;e}WnD1s^-F?)8JxB~yg5<}tA;lMSV3jY&`|*N8?xDH!<| znjC)Ao39_|1O)@ro2<A1qp6Q}j9U|b(8ebg2)z5P zxm$jxVYzL8dZDXYFv0Ql7DV>*OJc4!754T_-&r+)Jtivu9uki zwEG=wGb7$8xe)56QWwTCIB}aFlYU^78h@dyb|G zDf7zvqq`^3+~+OrT=S-Jl;jx&c>+Jw2r@85TA9V=R7q}Uw?x9u@XBG+YR!ekRZwjJ zvA1^&^KCPfo?X?9KhlUrfLv${IwI0a{Kk?F1(nqR1j*jLUe`7|Cukkl?^kTiH(L4HzP|`h%IDO zS?i&VWYRng*e8@?gE@cR$^FY4dB@tXlP2*j9pyp^?n|%#b)lc#CW;1muaH;D z$U?@RtCySbi5>oe2PN@aDmx_@;oi6BQPlJ+o>$Rv_iHUN7D35W0xdtS;yj;ARiNbQ zg)j`3kQ|Vt*iF)DjlShuoCfw03LoBh`&Uo7I$E0d`zhFdr0X?BRes52T&e%mPxWYGPN)$6 zp$E`1tT6RC`&P^)Tt|AHw;8>HbS5%bhnS`o%CZm2GPfSu`hV?pn3=Pjvkc092~(I0bjPr*nuWr<~aA@0cvNLP8}OnjSF#O6Je6D?qHV5 zLBCFP8}n%4(i>p?Ln=9*bK@;_A!bnV-Dw=@;ufB7*JTTd*jTU_*42LUD)K7Zj%P8x zKy*xvJeeGX+1`Y`d8*LkL~e`>$+i!I?~HEj`~H+*P4@-bzwRg7dsV%8l904F-qOCz zN~;6iFo+7<5*W=Qa=EapHBu8&heY9S&l>y%?8`oc!ZTU2mkP=zdgWRlmVOe3k>^$@r(?O-ts{saqrx4q76Id@KjQ=^CteyAc7j#vZVfKaPUi>o zTpkNStZ5fc;Gk>j?{eSn40#PlPf}Hln);PNt#P?Sy(b5~UX$F!43Fg+1;9ql-MZde z8W5^loMwAHarZj}k+{LCjGJEF*`EzY*LphaL5A%QbuViM_PhD<*F<}LOJqnmA7{Y2 z3`rBXF{E)PkZdQC_=rB;8-8SbM{P{zefd6OJC3Z=y%7Rii4MX5sbMRz8sDY%_K@^| zDD1>s<;trJ*p3^~T*8tpSB4{;hWO2;p0gOTO&sDy5e;vZjn@bs@`z0DXm3}rUwRx2 zvSNR1Syq~a1Z>5Ol>Xf*a+_M$_p&22(szU?iR0+)d8-gNHv`SKKBP_Ok(OZWLx!1o z{$>8^R9l^Op++G14a$kolKddThvzKnH{=>0XZVs#nlp4l*QuXDh$SQWRicdP{ZsQ5 zzy1zih&!Y<1TjMW05I89>&}Jic--dC>>yM;u#!i{!minkw*n93&(c481TYh-%*X>lr3(Got&iK%6Nl-snOiZ2 z#y7sb&k|GD)6=l$MU(EnbIPj6Ne~@Z9Y)`h#a35{ws0!a=uuKMUnDjR5DRae>$_+R zCqh^uNzhb{-*cr5$91?BJ=A`v7+xs`xK$f{UX~}Px&-;ei!%ZiHc96e*c%!Scq*^D zzcUkV_{;mu1-8YoWLOi>Bh_=U&TS407tYV7t>b6%Foo$i&02=A;sPFX1bH56G80{{ zrU^v&9@F_Ks7BZ8hYtYWe!+st36+p>VH3oZ-5KAE4Jg|#U229!Q#^$J9;IjUJ3HO> zwPnh?j^#Vk3x^ymUs7R~lFloCvhq%GqgyR#$8gEpTp#4{Tw2OJs&We=t)xMrAe{4D z$~kX4HP|u|*7d=>XdBNHw9%Vp5Lwq+q*=JxqzD(=knjq7q_98jzN#tEFOtkv2w({!Z(=qiE8u|`m z2}KzmCLZMxsdqrc5{9|4KilQVqwl_EC)yb)I*50XXbj4&fOb=39G zsC*4T7j6>IL3*E1%!fzA5w$XMcAF7q`vgaRBN91n;(0NnR2#N2^SX4a{RVVIL@8jW zYH(0>Gc1`9R4a!eOcrG;!7;C#a1LtR>wOT-e_I7`6eeHQW;q%s?2erO2FB8=>KA)Z z^Jr)HCu#bjo7!2d??*X}Bx2v{YG^N1jH4!Y8Y`u-X9Hl{I7v*#k3GJ_SwfAZ-St6u z;`FiPqO~=#c9}(hAGf;3r#OBBTe4Q13*X9Zd-$s1(XlD^Xz!&hM@iqu zR3A+JxZro}iY2o&&!*5XloEL6!>#tlE?TV(9!rto9mu*aZbpNnZ_6QbNZW464#idY*ZWif?_REl`xQ36?y;D9*;80^dl#occY`TogNsFgPvVy!muo(m zVZAxALfpJxrM9{$dei?gqiSFSj5VD0BldC!J^PwU0hO|`k5(Xl?HijQS+_;hCqxa5C%}oq0zhKnT`D%jRWBsT9UF-9Hipw+PR0Qu`P(qPU zAv*9#%Wz1x$$Gk5sO~F9X9wJW?YB1e&W-wPzyZCN5-Pz3>WSHh4}g+An`xQi+~zDj zU+_W{26mH3=jGoBvYxLj7FPLA&x`$i?BdwSGV(+Xwp~bohk|03o>(8pO0=1RFZ!m0l^y`;Beda|E z8iLa>pK>rF#p}N%od2|5iG$8IO>U(-!Hv9&vopZOJNwMt#-6*q-m{(6QO$w&U#MHg z4xpJkRJJeO_2?P3n0|>5BDJ~Bc$9^Rs}MggCzh!&&1lJ2cbZz^ahnnt0$u19D33

    LMx{?%|0N?)mtdQ@Pnt~x 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

    s-T_O`Cft=0qL?TZb7#Baz;WZxvNTK*4nD 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 BL3scG literal 62670 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 diff --git a/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt b/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt index 68feaf6..25587ee 100644 --- a/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt +++ b/app/src/main/java/dev/tricked/solidverdant/data/local/SettingsDataStore.kt @@ -81,6 +81,7 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont private const val CURRENT_MEMBERSHIP_ID = "current_membership_id" private const val CACHED_APP_THEME = "app_theme" private const val CACHED_AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP = "auto_clear_entry_fields_after_stop" + private const val CACHED_CLEAR_DESCRIPTION_AFTER_STOP = "clear_description_after_stop" private const val LEGACY_CACHED_KEEP_ENTRY_FIELDS_AFTER_STOP = "keep_entry_fields_after_stop" private const val TRACKING_STATE_JSON = "tracking_state_json" private const val TRACKING_DRAFT_JSON = "tracking_draft_json" @@ -90,6 +91,7 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont private val OPTIMISTIC_REFRESH = booleanPreferencesKey("optimistic_refresh") private val LIVE_UPDATE_ENABLED = booleanPreferencesKey("live_update_enabled") private val AUTO_CLEAR_ENTRY_FIELDS_AFTER_STOP = booleanPreferencesKey("auto_clear_entry_fields_after_stop") + private val CLEAR_DESCRIPTION_AFTER_STOP = booleanPreferencesKey("clear_description_after_stop") private val LEGACY_KEEP_ENTRY_FIELDS_AFTER_STOP = booleanPreferencesKey("keep_entry_fields_after_stop") private val LONG_TIMER_HOURS = intPreferencesKey("long_timer_hours") private val LONG_TIMER_WARNING_DEADLINE_EPOCH_MS = longPreferencesKey("long_timer_warning_deadline_epoch_ms") @@ -288,6 +290,13 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont else -> true } + /** Clear only the description after stopping when full auto-clear is disabled. Defaults off. */ + val clearDescriptionAfterStop: Flow = dataStore.data.map { preferences -> + preferences[CLEAR_DESCRIPTION_AFTER_STOP] ?: false + }.distinctUntilChanged() + + fun getCachedClearDescriptionAfterStop(): Boolean = immediateCache.getBoolean(CACHED_CLEAR_DESCRIPTION_AFTER_STOP, false) + val longTimerHours: Flow = dataStore.data.map { it[LONG_TIMER_HOURS] ?: DEFAULT_LONG_TIMER_HOURS }.distinctUntilChanged() /** @@ -355,6 +364,11 @@ class SettingsDataStore @Inject constructor(@ApplicationContext private val cont } } + suspend fun setClearDescriptionAfterStop(enabled: Boolean) { + immediateCache.edit().putBoolean(CACHED_CLEAR_DESCRIPTION_AFTER_STOP, enabled).apply() + dataStore.edit { preferences -> preferences[CLEAR_DESCRIPTION_AFTER_STOP] = enabled } + } + suspend fun setLongTimerHours(hours: Int) { require(hours in MIN_LONG_TIMER_HOURS..MAX_LONG_TIMER_HOURS) dataStore.edit { it[LONG_TIMER_HOURS] = hours } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/calendar/MonthCalendarView.kt b/app/src/main/java/dev/tricked/solidverdant/ui/calendar/MonthCalendarView.kt index 989a968..b7b54d7 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/calendar/MonthCalendarView.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/calendar/MonthCalendarView.kt @@ -16,6 +16,7 @@ import androidx.compose.foundation.clickable import androidx.compose.foundation.combinedClickable import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.BoxWithConstraints import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.ColumnScope import androidx.compose.foundation.layout.Row @@ -26,6 +27,7 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.offset import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll @@ -403,13 +405,14 @@ fun DayTimeline( val projectsById = remember(projects) { projects.associateBy { it.id } } val tasksById = remember(tasks) { tasks.associateBy { it.id } } val clientsById = remember(clients) { clients.associateBy { it.id } } - Box( + BoxWithConstraints( modifier = modifier .fillMaxWidth() .then(if (fillViewport) Modifier.fillMaxHeight() else Modifier.height(520.dp)) .verticalScroll(effectiveScrollState), ) { val totalHeight = calendarTotalHeight(settings) + val entryAreaWidth = maxWidth - CalendarGutterWidth - Dimens.Space2 Box(modifier = Modifier.fillMaxWidth().height(totalHeight)) { HourGridlines(settings = settings) CalendarTimeSelectionLayer( @@ -427,6 +430,7 @@ fun DayTimeline( val client = project?.clientId?.let(clientsById::get) val top = block.startFraction val height = block.heightFraction + val slotWidth = entryAreaWidth / block.columnCount.coerceAtLeast(1) val blockColor = if (entry.type == TimeEntryType.BREAK) { MaterialTheme.colorScheme.tertiary } else { @@ -459,8 +463,12 @@ fun DayTimeline( } val entryModifier = calendarEntryDragModifier( modifier = Modifier - .padding(start = CalendarGutterWidth, end = Dimens.Space2) - .offset(y = totalHeight * top), + .offset( + x = CalendarGutterWidth + (slotWidth * block.column), + y = totalHeight * top, + ) + .width(slotWidth) + .padding(end = Dimens.Space1), entry = entry, day = day, zone = zone, @@ -471,7 +479,7 @@ fun DayTimeline( (totalHeight * height).coerceAtLeast(Dimens.EntryMinHeight).toPx() }, gridHeightPx = with(LocalDensity.current) { totalHeight.toPx() }, - columnWidthPx = with(LocalDensity.current) { totalHeight.toPx() }, + columnWidthPx = with(LocalDensity.current) { entryAreaWidth.toPx() }, settings = settings, onMoveEntry = onMoveEntry, ) @@ -481,6 +489,7 @@ fun DayTimeline( subtitle = subtitle, time = duration, modifier = entryModifier + .height((totalHeight * height).coerceAtLeast(Dimens.EntryMinHeight)) .combinedClickable( onClick = { onEntryClick(entry) }, onLongClick = { onEntryLongPress(entry) }, diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarLayout.kt b/app/src/main/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarLayout.kt index 1a11b6a..7f5a319 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarLayout.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarLayout.kt @@ -307,15 +307,24 @@ fun layoutTrackedEntries( ?.let { (startSec, endSec) -> Clipped(entry, startSec, endSec) } }.sortedWith(compareBy({ it.startSec }, { -it.endSec }, { it.entry.id })) - val packing = packOverlaps(clipped.map { it.startSec to it.endSec }) val secondsInGrid = calendarGridBounds(day, zone, settings).seconds.toFloat() + val minimumVisibleFraction = + (Dimens.EntryMinHeight.value / calendarTotalHeight(settings).value) + .coerceAtLeast(MIN_ENTRY_HEIGHT_FRACTION) + val minimumVisibleSeconds = (secondsInGrid * minimumVisibleFraction).toLong().coerceAtLeast(1L) + // Pack using the visible interval, not only the factual interval. A short entry is deliberately + // drawn tall enough to read and tap; adjacent short entries therefore need separate lanes when + // those minimum-height blocks would otherwise paint over each other. + val packing = packOverlaps( + clipped.map { item -> item.startSec to maxOf(item.endSec, item.startSec + minimumVisibleSeconds) }, + ) return clipped.mapIndexed { index, item -> val (column, columnCount) = packing[index] TrackedEntryBlock( entry = item.entry, startFraction = item.startSec.toFloat() / secondsInGrid, heightFraction = ((item.endSec - item.startSec).toFloat() / secondsInGrid) - .coerceAtLeast(MIN_ENTRY_HEIGHT_FRACTION), + .coerceAtLeast(minimumVisibleFraction), column = column, columnCount = columnCount, ) diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarView.kt b/app/src/main/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarView.kt index df41e8c..f4ab3a4 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarView.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarView.kt @@ -576,6 +576,7 @@ private fun DayColumn( subtitle = subtitle, time = duration, modifier = entryModifier + .height((totalHeight * block.heightFraction).coerceAtLeast(Dimens.EntryMinHeight)) .combinedClickable( onClick = { onEntryClick(entry) }, onLongClick = { onEntryLongPress(entry) }, diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenu.kt b/app/src/main/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenu.kt index cf590e7..638af5d 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenu.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/components/ProjectTaskDropdownMenu.kt @@ -9,12 +9,15 @@ package dev.tricked.solidverdant.ui.components import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.BoxWithConstraints import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.heightIn import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.safeDrawingPadding import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.widthIn import androidx.compose.foundation.lazy.LazyColumn @@ -46,6 +49,7 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.RectangleShape import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.stringResource import androidx.compose.ui.window.Dialog @@ -363,16 +367,27 @@ private fun PickerDialog( onDismissRequest = onClose, properties = DialogProperties(usePlatformDefaultWidth = false), ) { - Box( - modifier = Modifier.fillMaxWidth().padding(Dimens.Space16), + BoxWithConstraints( + modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.Center, ) { + val compact = maxWidth < Dimens.NarrowCalendarWidth Surface( - modifier = Modifier.fillMaxWidth().widthIn(max = Dimens.PickerMaxWidth).heightIn(max = Dimens.PickerMaxHeight), - shape = MaterialTheme.shapes.extraLarge, - tonalElevation = Dimens.Space8, + modifier = if (compact) { + Modifier.fillMaxSize() + } else { + Modifier.fillMaxWidth().widthIn(max = Dimens.PickerMaxWidth).heightIn(max = Dimens.PickerMaxHeight) + }, + shape = if (compact) RectangleShape else MaterialTheme.shapes.extraLarge, + tonalElevation = if (compact) Dimens.Space1 else Dimens.Space8, ) { - Column(modifier = Modifier.fillMaxWidth()) { + Column( + modifier = if (compact) { + Modifier.fillMaxSize().safeDrawingPadding() + } else { + Modifier.fillMaxWidth() + }, + ) { Row( modifier = Modifier.fillMaxWidth().padding(start = Dimens.Space24, end = Dimens.Space8, top = Dimens.Space8), verticalAlignment = Alignment.CenterVertically, @@ -408,7 +423,7 @@ private fun PickerDialog( shape = MaterialTheme.shapes.medium, ) LazyColumn( - modifier = Modifier.fillMaxWidth().weight(1f, fill = false).testTag(listTestTag), + modifier = Modifier.fillMaxWidth().weight(1f).testTag(listTestTag), content = content, ) Spacer(Modifier.size(Dimens.Space8)) diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatisticsScreen.kt b/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatisticsScreen.kt index eca260f..fb857d6 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatisticsScreen.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatisticsScreen.kt @@ -14,8 +14,6 @@ import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.ExperimentalLayoutApi -import androidx.compose.foundation.layout.FlowRow import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize @@ -33,11 +31,15 @@ import androidx.compose.material3.Card import androidx.compose.material3.CircularProgressIndicator import androidx.compose.material3.DatePickerDialog import androidx.compose.material3.DateRangePicker +import androidx.compose.material3.DropdownMenuItem import androidx.compose.material3.ExperimentalMaterial3Api -import androidx.compose.material3.FilterChip +import androidx.compose.material3.ExposedDropdownMenuAnchorType +import androidx.compose.material3.ExposedDropdownMenuBox +import androidx.compose.material3.ExposedDropdownMenuDefaults import androidx.compose.material3.Icon import androidx.compose.material3.LinearProgressIndicator import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.OutlinedTextField import androidx.compose.material3.SnackbarHost import androidx.compose.material3.SnackbarHostState import androidx.compose.material3.Text @@ -155,24 +157,19 @@ fun StatisticsScreen(viewModel: StatisticsViewModel = hiltViewModel()) { // Persistent controls panel: range, filters and export share one card so they read // as a single tool strip instead of mismatched controls floating on bare background. SectionCard { - Row( - modifier = Modifier.fillMaxWidth(), - horizontalArrangement = Arrangement.spacedBy(Dimens.Space8), - ) { - Box(Modifier.weight(1f)) { - RangeChips(state.range, viewModel::setRange) - } - ExportAction( - exporting = exportState is ExportState.Running, - onExport = viewModel::export, - ) - } + RangeSelector(state.range, viewModel::setRange) StatFilterBar( filters = state.filters, catalog = state.catalog, onFiltersChange = viewModel::setFilters, onClearFilters = viewModel::clearFilters, ) + Box(Modifier.fillMaxWidth(), contentAlignment = Alignment.CenterEnd) { + ExportAction( + exporting = exportState is ExportState.Running, + onExport = viewModel::export, + ) + } } if (state.isRefreshing) { @@ -432,9 +429,10 @@ internal fun ProjectSwatch(color: Color) { ) } -@OptIn(ExperimentalMaterial3Api::class, ExperimentalLayoutApi::class) +@OptIn(ExperimentalMaterial3Api::class) @Composable -private fun RangeChips(current: StatRange, onSelect: (StatRange) -> Unit) { +internal fun RangeSelector(current: StatRange, onSelect: (StatRange) -> Unit) { + var expanded by remember { mutableStateOf(false) } var showPicker by remember { mutableStateOf(false) } val locale = appLocale() val options = listOf( @@ -446,25 +444,38 @@ private fun RangeChips(current: StatRange, onSelect: (StatRange) -> Unit) { R.string.stats_this_month to StatRange.ThisMonth, R.string.stats_previous_month to StatRange.PreviousMonth, ) - FlowRow(horizontalArrangement = Arrangement.spacedBy(Dimens.Space8)) { - options.forEach { (label, range) -> - FilterChip(selected = current == range, onClick = { onSelect(range) }, label = { Text(stringResource(label)) }) - } - FilterChip( - selected = current is StatRange.Custom, - onClick = { showPicker = true }, - label = { - Text( - if (current is StatRange.Custom) { - "${current.start.format( - DateTimeFormatter.ofPattern("d MMM", locale), - )} – ${current.end.format(DateTimeFormatter.ofPattern("d MMM", locale))}" - } else { - stringResource(R.string.stats_custom) + ExposedDropdownMenuBox(expanded = expanded, onExpandedChange = { expanded = it }) { + OutlinedTextField( + value = rangeLabel(current, locale), + onValueChange = {}, + readOnly = true, + singleLine = true, + label = { Text(stringResource(R.string.stats2_date_range)) }, + trailingIcon = { ExposedDropdownMenuDefaults.TrailingIcon(expanded) }, + modifier = Modifier + .fillMaxWidth() + .testTag("stats_range_selector") + .menuAnchor(ExposedDropdownMenuAnchorType.PrimaryNotEditable), + ) + ExposedDropdownMenu(expanded = expanded, onDismissRequest = { expanded = false }) { + options.forEach { (label, range) -> + DropdownMenuItem( + text = { Text(stringResource(label)) }, + modifier = Modifier.testTag("stats_range_option_${range.javaClass.simpleName}"), + onClick = { + onSelect(range) + expanded = false }, ) - }, - ) + } + DropdownMenuItem( + text = { Text(stringResource(R.string.stats_custom)) }, + onClick = { + expanded = false + showPicker = true + }, + ) + } } if (showPicker) { val selected = current as? StatRange.Custom @@ -490,6 +501,21 @@ private fun RangeChips(current: StatRange, onSelect: (StatRange) -> Unit) { } } +@Composable +private fun rangeLabel(range: StatRange, locale: java.util.Locale): String = when (range) { + StatRange.Today -> stringResource(R.string.today) + StatRange.Yesterday -> stringResource(R.string.yesterday) + StatRange.Last7Days -> stringResource(R.string.stats_last_7_days) + StatRange.LastWeek -> stringResource(R.string.stats_last_week) + StatRange.ThisWeek -> stringResource(R.string.stats_this_week) + StatRange.ThisMonth -> stringResource(R.string.stats_this_month) + StatRange.PreviousMonth -> stringResource(R.string.stats_previous_month) + is StatRange.Custom -> { + val formatter = remember(locale) { DateTimeFormatter.ofPattern("d MMM", locale) } + "${range.start.format(formatter)} – ${range.end.format(formatter)}" + } +} + private fun Long.toUtcDate(): LocalDate = Instant.ofEpochMilli(this).atZone(ZoneOffset.UTC).toLocalDate() @Composable diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt index b149da2..9cfb155 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt @@ -252,6 +252,7 @@ fun TrackingScreen( optimisticRefresh: Boolean, liveUpdateEnabled: Boolean, autoClearEntryFieldsAfterStop: Boolean, + clearDescriptionAfterStop: Boolean, longTimerHours: Int, editActiveEntryRequested: Boolean, onEditActiveEntryConsumed: () -> Unit, @@ -260,6 +261,7 @@ fun TrackingScreen( onOptimisticRefreshChange: (Boolean) -> Unit, onLiveUpdateEnabledChange: (Boolean) -> Unit, onAutoClearEntryFieldsAfterStopChange: (Boolean) -> Unit, + onClearDescriptionAfterStopChange: (Boolean) -> Unit, onLongTimerHoursChange: (Int) -> Unit, onRefresh: () -> Unit, onLogout: () -> Unit, @@ -692,27 +694,12 @@ fun TrackingScreen( } HorizontalDivider() - Row( - modifier = Modifier.fillMaxWidth().padding(horizontal = 16.dp, vertical = 12.dp), - verticalAlignment = Alignment.CenterVertically, - ) { - Column(modifier = Modifier.weight(1f)) { - Text( - stringResource(R.string.auto_clear_entry_fields_after_stop), - style = MaterialTheme.typography.bodyLarge, - ) - Text( - stringResource(R.string.auto_clear_entry_fields_after_stop_description), - style = MaterialTheme.typography.bodySmall, - color = MaterialTheme.colorScheme.onSurfaceVariant, - ) - } - Switch( - checked = autoClearEntryFieldsAfterStop, - onCheckedChange = onAutoClearEntryFieldsAfterStopChange, - modifier = Modifier.testTag(TrackingTestTags.AUTO_CLEAR_FIELDS_SWITCH), - ) - } + AutoClearEntryFieldsSettings( + autoClearEntryFieldsAfterStop = autoClearEntryFieldsAfterStop, + clearDescriptionAfterStop = clearDescriptionAfterStop, + onAutoClearEntryFieldsAfterStopChange = onAutoClearEntryFieldsAfterStopChange, + onClearDescriptionAfterStopChange = onClearDescriptionAfterStopChange, + ) HorizontalDivider() Row( @@ -915,9 +902,7 @@ fun TrackingScreen( if (entries.isEmpty()) null else HistoryDay( date = date, entries = entries, - groups = entries.groupBy { - "${it.projectId}_${it.taskId}_${it.description.orEmpty()}" - }.values.toList(), + groups = historyEntryGroups(entries), ) } PreparedHistory( @@ -1293,6 +1278,80 @@ internal fun LiveUpdateSettingRow( } } +/** Full field clearing plus the description-only fallback shown when full clearing is disabled. */ +@Composable +internal fun AutoClearEntryFieldsSettings( + autoClearEntryFieldsAfterStop: Boolean, + clearDescriptionAfterStop: Boolean, + onAutoClearEntryFieldsAfterStopChange: (Boolean) -> Unit, + onClearDescriptionAfterStopChange: (Boolean) -> Unit, +) { + Column(modifier = Modifier.fillMaxWidth()) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = Dimens.Space16, vertical = Dimens.Space12), + verticalAlignment = Alignment.CenterVertically, + ) { + Column(modifier = Modifier.weight(1f)) { + Text( + text = stringResource(R.string.auto_clear_entry_fields_after_stop), + style = MaterialTheme.typography.bodyLarge, + ) + Text( + text = stringResource(R.string.auto_clear_entry_fields_after_stop_description), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + ) + } + Switch( + checked = autoClearEntryFieldsAfterStop, + onCheckedChange = onAutoClearEntryFieldsAfterStopChange, + modifier = Modifier + .testTag(TrackingTestTags.AUTO_CLEAR_FIELDS_SWITCH) + .heightIn(min = Dimens.MinTouchTarget), + ) + } + + AnimatedVisibility( + visible = !autoClearEntryFieldsAfterStop, + enter = fadeIn() + expandVertically(), + exit = fadeOut() + shrinkVertically(), + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding( + start = Dimens.Space32, + top = Dimens.Space8, + end = Dimens.Space16, + bottom = Dimens.Space12, + ), + verticalAlignment = Alignment.CenterVertically, + ) { + Column(modifier = Modifier.weight(1f)) { + Text( + text = stringResource(R.string.clear_description_after_stop), + style = MaterialTheme.typography.bodyLarge, + ) + Text( + text = stringResource(R.string.clear_description_after_stop_description), + style = MaterialTheme.typography.bodySmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + ) + } + Switch( + checked = clearDescriptionAfterStop, + onCheckedChange = onClearDescriptionAfterStopChange, + modifier = Modifier + .testTag(TrackingTestTags.CLEAR_DESCRIPTION_AFTER_STOP_SWITCH) + .heightIn(min = Dimens.MinTouchTarget), + ) + } + } + } +} + @OptIn(ExperimentalLayoutApi::class, ExperimentalMaterial3Api::class) @Composable @Suppress("LongMethod") @@ -1609,9 +1668,7 @@ private fun historyHeaderIndex( var index = 0 for ((date, entries) in groups) { if (date == targetDate) return index - index += 1 + entries.groupBy { - "${it.projectId}_${it.taskId}_${it.description ?: ""}" - }.size + index += 1 + historyEntryGroups(entries).size } return -1 } @@ -1719,9 +1776,7 @@ internal fun LazyListScope.trackingHistoryItems( val day = HistoryDay( date = date, entries = completed, - groups = completed.groupBy { - "${it.projectId}_${it.taskId}_${it.description.orEmpty()}" - }.values.toList(), + groups = historyEntryGroups(completed), ) add(HistoryListItem.Header(day)) day.groups.forEach { add(HistoryListItem.Group(day.date, it)) } @@ -1757,6 +1812,10 @@ internal fun LazyListScope.trackingHistoryItems( data class Group(val date: LocalDate, val entries: List) : HistoryListItem } +/** Keep every punch visible, even when multiple entries share the same project/task/description. */ +internal fun historyEntryGroups(entries: List): List> = + entries.map(::listOf) + @Immutable private data class PreparedHistory( val groupedEntries: Map>, diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt index 64973c0..ea3c481 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingTestTags.kt @@ -22,6 +22,7 @@ object TrackingTestTags { const val SETTINGS_BUTTON = "track_settings_button" const val LIVE_UPDATE_SWITCH = "track_live_update_switch" const val AUTO_CLEAR_FIELDS_SWITCH = "track_auto_clear_fields_switch" + const val CLEAR_DESCRIPTION_AFTER_STOP_SWITCH = "track_clear_description_after_stop_switch" const val REFRESH_BUTTON = "track_refresh_button" const val ADD_ENTRY_BUTTON = "track_add_entry_button" const val EDIT_ACTIVE_ENTRY = "track_edit_active_entry" diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt index d6a33e2..72ca3b1 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt @@ -188,6 +188,7 @@ class TrackingViewModel @Inject constructor( private val cachedTrackingDraft = settingsDataStore.getCachedTrackingDraft() ?.takeIf { draft -> draft.organizationId == cachedTrackingState?.organizationId } private var autoClearEntryFieldsAfterStopEnabled = settingsDataStore.getCachedAutoClearEntryFieldsAfterStop() + private var clearDescriptionAfterStopEnabled = settingsDataStore.getCachedClearDescriptionAfterStop() private val _uiState = MutableStateFlow( cachedTrackingState?.let { cached -> TrackingUiState( @@ -231,6 +232,7 @@ class TrackingViewModel @Inject constructor( val optimisticRefresh = settingsDataStore.optimisticRefresh val liveUpdateEnabled = settingsDataStore.liveUpdateEnabled val autoClearEntryFieldsAfterStop = settingsDataStore.autoClearEntryFieldsAfterStop + val clearDescriptionAfterStop = settingsDataStore.clearDescriptionAfterStop val longTimerHours = settingsDataStore.longTimerHours private val _snapshotHydrated = MutableStateFlow(false) val snapshotHydrated: StateFlow = _snapshotHydrated.asStateFlow() @@ -341,6 +343,13 @@ class TrackingViewModel @Inject constructor( viewModelScope.launch { settingsDataStore.setAutoClearEntryFieldsAfterStop(enabled) } } + fun setClearDescriptionAfterStop(enabled: Boolean) { + clearDescriptionAfterStopEnabled = enabled + viewModelScope.launch { settingsDataStore.setClearDescriptionAfterStop(enabled) } + } + + private fun shouldClearDescriptionAfterStop(): Boolean = autoClearEntryFieldsAfterStopEnabled || clearDescriptionAfterStopEnabled + fun setLongTimerHours(hours: Int) { viewModelScope.launch { settingsDataStore.setLongTimerHours(hours) @@ -529,7 +538,7 @@ class TrackingViewModel @Inject constructor( // so a user's typing is not clobbered by a background emission. editingDescription = if (activeChanged && active != null) { active.description.orEmpty() - } else if (activeChanged && autoClearEntryFieldsAfterStopEnabled) { + } else if (activeChanged && shouldClearDescriptionAfterStop()) { "" } else { currentState.editingDescription @@ -1464,7 +1473,7 @@ class TrackingViewModel @Inject constructor( val currentState = _uiState.value _uiState.value = currentState.copy( isPaused = false, - editingDescription = if (autoClearEntryFieldsAfterStopEnabled) "" else currentState.editingDescription, + editingDescription = if (shouldClearDescriptionAfterStop()) "" else currentState.editingDescription, editingProjectId = if (autoClearEntryFieldsAfterStopEnabled) null else currentState.editingProjectId, editingTaskId = if (autoClearEntryFieldsAfterStopEnabled) null else currentState.editingTaskId, editingTags = emptyList(), @@ -1503,7 +1512,7 @@ class TrackingViewModel @Inject constructor( isTracking = false, isPaused = false, currentTimeEntry = null, - editingDescription = if (autoClearEntryFieldsAfterStopEnabled) "" else currentState.editingDescription, + editingDescription = if (shouldClearDescriptionAfterStop()) "" else currentState.editingDescription, editingProjectId = if (autoClearEntryFieldsAfterStopEnabled) null else currentState.editingProjectId, editingTaskId = if (autoClearEntryFieldsAfterStopEnabled) null else currentState.editingTaskId, editingTags = emptyList(), diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index abfd783..d1d39d1 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -247,6 +247,8 @@ 保存済みのアカウント情報ですぐに取得します。API 呼び出しが少し増えます 入力内容を自動消去 タイマー停止時に説明、プロジェクト、タスクを消去します + 停止時に説明を消去 + 次の入力用にプロジェクトとタスクを保持します 入力内容をリセット テーマ アプリの配色を選択 diff --git a/app/src/main/res/values-ja/strings_stats2.xml b/app/src/main/res/values-ja/strings_stats2.xml index bb09a2c..c47ac33 100644 --- a/app/src/main/res/values-ja/strings_stats2.xml +++ b/app/src/main/res/values-ja/strings_stats2.xml @@ -29,6 +29,7 @@ フィルター + 日付範囲 統計フィルターを編集 統計をフィルター すべての記録時間を表示中 diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 828d4fb..6ec8050 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -259,6 +259,8 @@ Haal gegevens direct op met opgeslagen accountinformatie; gebruikt enkele extra API-aanroepen Invoervelden automatisch wissen Wis de beschrijving, het project en de taak wanneer de timer stopt + Beschrijving wissen na stoppen + Behoud het project en de taak voor de volgende invoer Invoervelden wissen Thema Kies de kleurstijl van de app diff --git a/app/src/main/res/values-nl/strings_stats2.xml b/app/src/main/res/values-nl/strings_stats2.xml index d27692c..f5ac16b 100644 --- a/app/src/main/res/values-nl/strings_stats2.xml +++ b/app/src/main/res/values-nl/strings_stats2.xml @@ -29,6 +29,7 @@ Filters + Datumbereik Statistiekfilters bewerken Statistieken filteren Alle geregistreerde tijd wordt getoond diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 13fe9fd..ff09442 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -268,6 +268,8 @@ Fetch data immediately using cached account info; uses a few extra API calls Auto-clear entry fields Clear the description, project, and task when the timer stops + Clear description after stop + Keep the project and task selected for the next entry Reset entry fields Theme Choose the app color style diff --git a/app/src/main/res/values/strings_stats2.xml b/app/src/main/res/values/strings_stats2.xml index 8bbb58b..e005451 100644 --- a/app/src/main/res/values/strings_stats2.xml +++ b/app/src/main/res/values/strings_stats2.xml @@ -29,6 +29,7 @@ Filters + Date range Edit statistics filters Filter statistics Showing all tracked time diff --git a/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt b/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt index 1a31901..08bd492 100644 --- a/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/data/local/SettingsDataStoreTrackingRetentionTest.kt @@ -30,4 +30,15 @@ class SettingsDataStoreTrackingRetentionTest { assertTrue(settingsDataStore.autoClearEntryFieldsAfterStop.first()) assertTrue(settingsDataStore.getCachedAutoClearEntryFieldsAfterStop()) } + + @Test + fun clear_description_setting_round_trips_through_flow_and_first_frame_cache() = runTest { + settingsDataStore.setClearDescriptionAfterStop(true) + assertTrue(settingsDataStore.clearDescriptionAfterStop.first()) + assertTrue(settingsDataStore.getCachedClearDescriptionAfterStop()) + + settingsDataStore.setClearDescriptionAfterStop(false) + assertFalse(settingsDataStore.clearDescriptionAfterStop.first()) + assertFalse(settingsDataStore.getCachedClearDescriptionAfterStop()) + } } diff --git a/app/src/test/java/dev/tricked/solidverdant/screenshots/ReadmeScreenshotsTest.kt b/app/src/test/java/dev/tricked/solidverdant/screenshots/ReadmeScreenshotsTest.kt index 0f03ca9..d87ebd4 100644 --- a/app/src/test/java/dev/tricked/solidverdant/screenshots/ReadmeScreenshotsTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/screenshots/ReadmeScreenshotsTest.kt @@ -75,6 +75,7 @@ import java.time.Instant import java.time.LocalDate import java.time.YearMonth import java.time.ZoneId +import java.time.ZoneOffset import java.time.format.TextStyle import dev.tricked.solidverdant.ui.navigation.Screen as NavScreen @@ -310,11 +311,20 @@ class ReadmeScreenshotsTest { val d09 = LocalDate.of(2026, 6, 9) val state = CalendarUiState( viewMode = CalendarViewMode.MONTH, + zone = ZoneOffset.UTC, visibleMonth = YearMonth.of(2026, 6), selectedDate = d10, isLoading = false, bucketsByDate = mapOf( - d10 to DayBucket(d10, historyEntries.filter { it.start.startsWith("2026-06-10") }, 13_800), + d10 to DayBucket( + d10, + historyEntries.filter { it.start.startsWith("2026-06-10") } + + listOf( + entry("m-short-1", "Setup", "2026-06-10T13:36:00Z", "2026-06-10T13:39:00Z", 180), + entry("m-short-2", "Run", "2026-06-10T13:41:00Z", "2026-06-10T13:42:00Z", 60), + ), + 14_040, + ), d09 to DayBucket(d09, historyEntries.filter { it.start.startsWith("2026-06-09") }, 8_100), ), ) @@ -335,6 +345,7 @@ class ReadmeScreenshotsTest { val tue = week[1] val state = CalendarUiState( viewMode = CalendarViewMode.WEEK, + zone = ZoneOffset.UTC, selectedDate = mon, weekStart = DayOfWeek.MONDAY, dayCount = 7, @@ -347,8 +358,10 @@ class ReadmeScreenshotsTest { listOf( entry("w1", "Deep work", "2026-06-08T09:00:00Z", "2026-06-08T12:00:00Z", 10_800, taskId = "t1"), entry("w3", "Design review", "2026-06-08T10:00:00Z", "2026-06-08T11:30:00Z", 5_400, taskId = "t2"), + entry("w-short-1", "Setup", "2026-06-08T13:36:00Z", "2026-06-08T13:39:00Z", 180, taskId = "t1"), + entry("w-short-2", "Run", "2026-06-08T13:41:00Z", "2026-06-08T13:42:00Z", 60, taskId = "t1"), ), - 16_200, + 16_440, ), tue to DayBucket( diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarLayoutTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarLayoutTest.kt index bfab0d0..659f951 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarLayoutTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/calendar/WeekCalendarLayoutTest.kt @@ -214,6 +214,22 @@ class WeekCalendarLayoutTest { assertTrue(blocks.all { it.column == 0 && it.columnCount == 1 }) } + @Test + fun layoutTrackedEntries_shortAdjacentEntriesUseSeparateLanesWhenVisibleBlocksOverlap() { + val day = LocalDate.of(2026, 8, 20) + val entries = listOf( + entry("first", "2026-08-20T13:36:00Z", "2026-08-20T13:39:00Z"), + entry("second", "2026-08-20T13:41:00Z", "2026-08-20T13:42:00Z"), + ) + + val blocks = layoutTrackedEntries(entries, day, Instant.parse("2026-08-20T14:30:00Z"), utc) + + assertEquals(2, blocks[0].columnCount) + assertEquals(2, blocks[1].columnCount) + assertEquals(0, blocks[0].column) + assertEquals(1, blocks[1].column) + } + @Test fun layoutTrackedEntries_usesPositiveDurationFallbackAcrossMidnight() { val entry = entry("duration", "2026-07-06T23:00:00Z", null).copy(duration = 3 * 3600) diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatisticsRangeSelectorTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatisticsRangeSelectorTest.kt new file mode 100644 index 0000000..2820ca9 --- /dev/null +++ b/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatisticsRangeSelectorTest.kt @@ -0,0 +1,53 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.ui.statistics + +import androidx.compose.material3.MaterialTheme +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.test.junit4.v2.createComposeRule +import androidx.compose.ui.test.onNodeWithTag +import androidx.compose.ui.test.performClick +import org.junit.Assert.assertEquals +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner +import org.robolectric.annotation.Config +import java.util.concurrent.atomic.AtomicReference + +@RunWith(RobolectricTestRunner::class) +@Config(sdk = [34]) +class StatisticsRangeSelectorTest { + + @get:Rule + val composeRule = createComposeRule() + + @Test + fun rangeOptionsUseOneSelectorAndUpdateItsVisibleValue() { + val selected = AtomicReference(StatRange.Today) + composeRule.setContent { + var range by remember { mutableStateOf(StatRange.Today) } + MaterialTheme { + RangeSelector( + current = range, + onSelect = { + range = it + selected.set(it) + }, + ) + } + } + + composeRule.onNodeWithTag("stats_range_selector").performClick() + composeRule.onNodeWithTag("stats_range_option_ThisMonth").performClick() + + assertEquals(StatRange.ThisMonth, selected.get()) + } +} diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt index 1b61f94..ca0b52a 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingControlsRetentionTest.kt @@ -105,4 +105,41 @@ class TrackingControlsRetentionTest { composeRule.onNodeWithTag(TrackingTestTags.RESET_FIELDS_BUTTON).assertDoesNotExist() } + + @Test + fun description_only_setting_is_shown_when_full_auto_clear_is_disabled() { + var enabled = false + composeRule.setContent { + MaterialTheme { + AutoClearEntryFieldsSettings( + autoClearEntryFieldsAfterStop = false, + clearDescriptionAfterStop = false, + onAutoClearEntryFieldsAfterStopChange = {}, + onClearDescriptionAfterStopChange = { enabled = it }, + ) + } + } + + composeRule.onNodeWithTag(TrackingTestTags.CLEAR_DESCRIPTION_AFTER_STOP_SWITCH) + .assertIsDisplayed() + .performClick() + + assertTrue(enabled) + } + + @Test + fun description_only_setting_is_hidden_when_full_auto_clear_is_enabled() { + composeRule.setContent { + MaterialTheme { + AutoClearEntryFieldsSettings( + autoClearEntryFieldsAfterStop = true, + clearDescriptionAfterStop = true, + onAutoClearEntryFieldsAfterStopChange = {}, + onClearDescriptionAfterStopChange = {}, + ) + } + } + + composeRule.onNodeWithTag(TrackingTestTags.CLEAR_DESCRIPTION_AFTER_STOP_SWITCH).assertDoesNotExist() + } } diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingTimeFormattingTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingTimeFormattingTest.kt index 088d547..2fd3ccc 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingTimeFormattingTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingTimeFormattingTest.kt @@ -14,14 +14,39 @@ import java.time.Instant import java.time.LocalDate import java.time.ZoneId import java.time.ZoneOffset +import java.util.Locale class TrackingTimeFormattingTest { + + @Test + fun `history keeps repeated punches as separate visible rows`() { + val first = TimeEntry( + id = "morning", + userId = "user", + start = "2026-08-20T08:00:00Z", + end = "2026-08-20T09:54:00Z", + organizationId = "org", + ) + val second = TimeEntry( + id = "afternoon", + userId = "user", + start = "2026-08-20T13:36:00Z", + end = "2026-08-20T13:39:00Z", + organizationId = "org", + ) + + val groups = historyEntryGroups(listOf(first, second)) + + assertEquals(listOf("morning", "afternoon"), groups.map { it.single().id }) + } + @Test fun `multi-day range includes both dates`() { val formatted = formatTimeRange( start = "2026-07-06T23:00:00Z", end = "2026-07-08T01:00:00Z", zone = ZoneOffset.UTC, + locale = Locale.ENGLISH, ) assertTrue(formatted, formatted.contains("6 Jul 2026")) diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelForegroundTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelForegroundTest.kt index d380799..03a7f0b 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelForegroundTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelForegroundTest.kt @@ -185,7 +185,16 @@ class TrackingViewModelForegroundTest { val vm = viewModel() vm.loadAllData(ORG, MEMBER) - vm.uiState.first { it.syncOperations.isNotEmpty() } + // Do not suspend with Flow.first here: runTest may auto-advance virtual time to the next + // delayed task while Room delivers from its executor, which would skip the reveal window + // this test is proving. Pump only work at the current virtual timestamp instead. + val deadlineNanos = System.nanoTime() + 5_000_000_000L + while (vm.uiState.value.syncOperations.isEmpty() && System.nanoTime() < deadlineNanos) { + shadowOf(Looper.getMainLooper()).idle() + dispatcher.scheduler.runCurrent() + Thread.yield() + } + assertTrue("Timed out waiting for pending sync operations", vm.uiState.value.syncOperations.isNotEmpty()) shadowOf(Looper.getMainLooper()).idle() dispatcher.scheduler.runCurrent() assertFalse(vm.uiState.value.syncStatusVisible) diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt index 396e3bb..510fdda 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt @@ -116,6 +116,7 @@ class TrackingViewModelMutationTest { @Test fun stop_keeps_description_project_and_task_when_auto_clear_is_disabled() = runTest(dispatcher.scheduler) { settings.setAutoClearEntryFieldsAfterStop(false) + settings.setClearDescriptionAfterStop(false) val active = activeEntry() val repository = mockk(relaxed = true) cacheActiveEntry(active) @@ -131,6 +132,24 @@ class TrackingViewModelMutationTest { coVerify(exactly = 1) { repository.stopEntry(active, "user") } } + @Test + fun stop_clears_only_description_when_description_clear_is_enabled() = runTest(dispatcher.scheduler) { + settings.setAutoClearEntryFieldsAfterStop(false) + settings.setClearDescriptionAfterStop(true) + val active = activeEntry() + val repository = mockk(relaxed = true) + cacheActiveEntry(active) + val viewModel = viewModel(repository) + + viewModel.stopTimeEntry() + dispatcher.scheduler.runCurrent() + + assertEquals("", viewModel.uiState.value.editingDescription) + assertEquals("project-1", viewModel.uiState.value.editingProjectId) + assertEquals("task-1", viewModel.uiState.value.editingTaskId) + coVerify(exactly = 1) { repository.stopEntry(active, "user") } + } + @Test fun stop_clears_entry_fields_when_auto_clear_is_enabled() = runTest(dispatcher.scheduler) { settings.setAutoClearEntryFieldsAfterStop(true) From 2a08bc416f0a901ee96568fed638d5144bf98a3b Mon Sep 17 00:00:00 2001 From: AKolenda Date: Fri, 21 Aug 2026 18:30:20 -0600 Subject: [PATCH 06/11] Improve searchable filters and calendar cards --- .github/screenshots/readme/calendar-month.png | Bin 80163 -> 81686 bytes .github/screenshots/readme/calendar-week.png | Bin 54910 -> 54891 bytes .../e2e/flows/SearchFilterE2eTest.kt | 4 +- .../solidverdant/e2e/robots/TrackRobot.kt | 3 +- .../solidverdant/ui/components/EntryBlock.kt | 49 +++--- .../SearchableSingleSelectDialog.kt | 166 ++++++++++++++++++ .../ui/statistics/StatFilterBar.kt | 55 +++++- .../ui/tracking/TrackingScreen.kt | 126 ++++++------- .../ui/tracking/TrackingViewModel.kt | 7 + app/src/main/res/values-ja/strings.xml | 3 + app/src/main/res/values-ja/strings_stats2.xml | 1 + app/src/main/res/values-nl/strings.xml | 3 + app/src/main/res/values-nl/strings_stats2.xml | 1 + app/src/main/res/values/strings.xml | 3 + app/src/main/res/values/strings_stats2.xml | 1 + .../SearchableSingleSelectDialogTest.kt | 54 ++++++ .../StatFilterBarInteractionTest.kt | 56 ++++++ .../TrackingViewModelForegroundTest.kt | 50 +----- 18 files changed, 445 insertions(+), 137 deletions(-) create mode 100644 app/src/main/java/dev/tricked/solidverdant/ui/components/SearchableSingleSelectDialog.kt create mode 100644 app/src/test/java/dev/tricked/solidverdant/ui/components/SearchableSingleSelectDialogTest.kt create mode 100644 app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterBarInteractionTest.kt diff --git a/.github/screenshots/readme/calendar-month.png b/.github/screenshots/readme/calendar-month.png index 3c7f1309bbd0f49ad7a12625269738a123470382..27b449f7ccb9caddce52a263e7dde2d2796fa158 100644 GIT binary patch delta 34892 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 aH=<;ZbQ1dT5xn;&Q+cTIp!9e1;QtTEV0AA5 delta 33735 zcmcG$c|4Ts|36MbC8-oesGO9tB#g2vrIIZr+aR*f7+JviApo7*$L zZ!gIz0@}wW#O64$oQR|7U-kDN|MjTj&eACB{iXVkEW@uhh#iZRYf1T)BprVB=7Fqu z>-?;~#_pSN_lnEzo_W^Rn5^nB7InFGaIIkn43L#=bzd>F#;bq{bbg13;$nQA^I8c&Of&K*3zV- zX&Y}blB;RJ&&!WC9hC*%`p5RR=XUY!nABJO(o%nEbuh)?oquXQq8%b0Fyla4BL33; zpz9}ff3~*^_rdmdhTXJ|4F!H)ezZS0^pj72Z{Mkg3vMHuT%Ua@^p{qOd*2zW%3d1^$=#`k%5D_+R4df67+iztq?Nl&}9O zTY>*lU;k6S{-#*egl5dGU#70+3!)M# zkUJm}af(OipV#!+*SZj^m+-53@Qo`++cL3_Zmub${%v4Gs&gTO(Db6f_iea}5q^9J zI3k1zj+jao0Y}vQ+lca8BLX`ipS;g?R$tyxmN3R6PImMOjn=|4$ZW z&DIoPJWG^9cg!kA2_4z6*y{F9@{o4fl+Icasxx2{?EU&O_4XN2LK6vHYRo@ztoUFE!V_3{m`U}B0#_;z zipSby;PK5%)IMRIOnA42|%M}hwz&;Cz53jFs={-2oEA?~G=Cd-#K4d9_~IoOE( zs%_6$eDp$3T#DD2Bx-*w5e>g2LU}np`^f{%#pQ-j6@px1k~*~5aS6u*1{b|EWV}Xx zJCjMy30qOd-OcfeOzf=cQINA_U0#g;#bf3%A;i6Hb2uq@qKY@Qr?seB!7O5wZ>}!3 zW`=y5aZ<4^-p#Y^_p#|otXn{#P+xfM*_bksyvCwwDK4!{*koXAKup3l1x!O-?cx)xa z?n?lkBTU3mA(7+d=SJtd7-|UAi$J?&G8*uHdIWjPan&@w_+&o(83i7@5&q%eTz+RF zdhSLq54bDTR9 zv{dBeneoB^4h>0i$2A1suqZy+3g4BivbmeZcnSc9a^lCqJvNi4K$xh$ZGU>Dtj3{z zR6qKSchk29(adC*bpIyfoL`@&B>)?2eIqT^Ki4px9Qb*faMYTG%4$96l;hbLd&Kf; zB5vv&5s?pvb`0BW&weC= z!V@(ZVW&z{C=QFK=D zw<`%}CN_(;>`K0@mQS4UpdA46O*U5nvo-!DM)9)#u@mJEbOZ8FAyb;J_y%2;Y`Vy+VMq4#>! zIlpga%_lq(Y>`HKMm92gN)(|Q&4YZ~DD)D;j9Ph`z)-)^dZ!s75AYosbLXE!l3P+j z07A4F>OCc3iV(@fwv74@D1Klj*3(ak$k@bfeUQi}IyvJrlk3#P$FsDezPU6FR2kH*-aBh4 zrxu9Qds3UySvK3hJ*Rs>Hh3+6k}?Mz`LeCgx};^szYVDL*6Z>o9bFWU)uG3nFI)O1 znC>ww?i}G2Vz*H-+z%%Ntnn@iw+^B>YP*K1yrT9mb9W9Dm@JS#UXhH;{bX$u-ZspZ zv@C%#XL0?HU|$dSPs8p8Z5F(CG_cQU|J{7=6Qe9blZ$B-(dKG*VrSnO3(;Qk7k}%x zel$|!bbHa|A&Ii~d0P|kW|@$kEM9B!_b>qFtu$zdX# zvR>};Ha8LMK=CWJqAIO57A|$o%n=27?MCwAIS*GuzMTru39S1X6je&_s+u-}&r9j_ zU8-Gd##h_pmz%?zMeFE*O~$%^fG`V15ZDVvQQ{wZ|TF|6f$Y**{e~CCUR2m zn6;5LKC98r#Dl>!4V_avnve>>`=RhxMHE`yWM_Cab(0aHZzPX7L81X4j`6CBFfcL) zQk^@8DSSl5Ak8f$bJ9t`cD%Rvdh7PcD zZ#B4#ETg=b@tC*6e|S~&GF&8FHEkQ0siMCC1bNqEz10-B9h*v?pTgnijL!!-E+J~$ zoA^u@xJx#~@;Y3XJJzQ}c{|+g0QSePulAtc_kL~P_IrD;i(Kfm+2cwdf=qkAnMd~V z8pt)=$$X-7#M{7RK?hhcR6sEJ^fO@NI-*=^TD>d~aZ!Cm4IjE3pqE==|EL1qCyGBJ z?`iPM=v=zQ>KWz{q@Hi6g#CIqG&0e;lW5W5AWXDNt-zcXgt(fd*qI^>lrS=WiMEE0 z23SmXe?iBX!3R0rCJJS28G|)yaw!s^=&XO!2{$*T58puE(q0d7h^6d?1Cz$JM@u!i zxGHYq95QomPc?2X=slM>Rw7_SZ&eEYVr;g{GgfE1H{2f@)b_byaXRlX^US^VB?0!f zSk5_j*ps8s*gZ5FUlbNb3Zs!07~|CU=B7^80uX%gM(x+|;T7hTR_L?jm{*OnWe$e` z1pUAXjl_LeN^#MGv`f=4z&{i(H!SXim*g;N@%nVg`7%A|`=+piF+!EJrtpQR)VYuq z8{Q5xn%Fk2@20Umoi{@G(aiON+nL=CP6k3_%j4P4bb{*N@K(^35LY#2I!cbA(~+vbYNhqJ^z?}lKSsu z?xyquxg|p}S7;R-+>!KB={*a}B!7(sWDV8${g81`x&29hEe*k8>HCULeF#l4Zc{d3R7+-xUTyx!sEl+K z#SFXza#qSjCTP{EB}3a1itrX>WfF$vS}3OO(2vZT^F5*WHQQ#+xVQH=BjkP{j1BWN zs3nIa#v`6D2@|WWU zJ$jxN#h%}C>j`do^ilziyx*fywawO<+Pp`}>LT_g>%@B+@Y7+v&Birl=DqdI71uAM z#--{_>n?5&tq7yMI@RSBP)cSI(LjVS z_yh9tc_wbObWR&o9d3%u#DJnKT>cn|r+*LT@p!%!z0yuuBls z9>q6_*Q`)n>bl(>4L{A)$~u1qVruw^R>}VDt6ra%1_+H^$OAHUl3GwYR%1@lO~1o;GHBGfP0gmF z)LwOsvc>fd0BY)5Y%t5k)p8RW(Uxv-1Ui2?VEXl$@a8emr<9|R0-Q9keWB;~D-x)S zXZzgNF%^!Y4`y$5zAjN*_12;Wtu^z)8;u)xz7~J)s!IAY7~}h`#qSsRPyP2dAtR94%FXy zU-#QlQ<~qG0y?%ijL-lGEKEWxzkSw+=1Lalbi>Osl@_egM|C|f2EST*Xi%4&%guGv za7z{qC$vwM+XvHSfV-xp9Ix`B7~a+f6ZaDH9vHG{B_V5%SM+ds`u+v?+~v^~pPZYo z{#f*5*#0Lg?)r_Swp(MwvPWgXh>OUNEyUsVOQWl;fNVc&!Svo-7HVQC@i^MTIwAjr zRD@A~YK01D*&sZ3-Vbluxf!*@Ty5}7pn98U$QUvM+8C?CKzo0^L7}}#BD`!v#m=5F ztPZ&y_`W~ps~ZT3tlojZabYJnY_ErbTRkAkKB1+3xmd6pW-7Kx2{$e6vGa40syR#M zBLeV!_^zDx4ApzF8~Z!JVtxf#npArMMZ|=#p+;0fcI~<381!hQ2{)Eqv5B8Vr%z(0W&aXOZ`C z>Bi4U!e|-v`KWfjHw%l4QOOn}si;;yzlB*j+AG;YHHi0fU^TloAv{@qpM5OUAzwA! zCxTVLhqkIM@}ccW6m0Mpvlq}>sNPySvA%&~I3(1_hg_(3BwXRCZ^I3l&jZ%apmDFC z2oA$TE>3nNCgkp%u5fOYvF@aM&Hd1HPf!dZ;h>o{Ms>eA7=?;2a}Y*10AG~sIsN9m ztnt%X7R5QB5PHO zZF-3j|B+2RbZ=1w;L;wR#oMv)x>)_T4rjMf;*0&Um6nclJ~=ItS?osRH!z^aCxA_M81vAR(ul0$h?gcJ5Upp zF=TMc&YY1jAG{r1pzYb0t3vvHC9S4cNUF&={aG=^g{wCa@UYrZlGj?H<0sPWQx>LW z1?v&+c)wTPlQ=z~FJdIcHNkGAF|SI?bP$C ziRZ=RoJ)H&PMe9A=~X8)(_^L1)8@k`%cEdX@Jzv#vGQGStieUt-C0*TXYw-X8>B6^8jGj(ATro)`a>;`jBgQK9k6>amok z0@%hFktgPZxZC~3C!^qrTAbg){X?f)?TvbYLxQHr)FYtx3+{3uNH&RgcHD*7CEon_ zb6efpoNm$wO14l8k)(B)QO6P2tKmIUlYNP}NHeiJZ5b=5Lh~yuL9L``hW9A>Q9Sm+ zZip1Ox@bKs{^;_dO#EDvCoH~v1xu>>j+DRgUM7mwL~3J?(zl!(uXzSrpDuC;SQ2%2 zGS_V;3YW1o!gk%5%9GlZGxNkBry$W=2pE%)Sxn^{g_!A)y!1L#lYjYM=J%E0vS2MMuegoEz%hU&b$PZ_*GpKObfBZ(D+kk9{8)u))q__8b+-@-iX&H& z(|v~J41-<2S%_noxIvRphi7%WNMFB%WyvAa-w&A>5S>`vU3z63!SH}0qMnOwVYm^< z2V;%W`Mt%Z?iKQymW6^7uoq$oTu-B)4e07Uf1JJ|tJai4-3F9ErG#~$O6^6^F8D5# zy)mHN7&DJr`2^_G$6b<7H@Up-AtGqEltMPhLQF)BVr?%Q(sYe$~4o1z`<&_JtEL(O($ zo-TVM&x1e2Tr?fH9L*A5ZX`Vt%xWhTGi!GaG)^}fn>`Oq&DOFJ` z(c-zp#wq_^Tw=%L4;0UId}NEREojiBy#Q2dTU2m zG}auBQD|4Ni&6Ale%2S6=tv_PvK=e99ZEp}%3IV6#g5TLKPT9QXq3JeBpV#j2FTD- z+LLgsHJ^AK=%IRg!epu)@g-vH+m-SG0>u;H`8vz*x69gz`%BnDg?Y{BvFrTH_mObJ zb+MO@qGJ?Sg)kMj&Cyn2RruYAYc-OxVab*f=8(i;T4xNK=H>B$!EME}=oM=aP?xtD*x z6Lc^6bFN2A1X#a|qJbVL?bJi4i4WPzJX|B$GsMO+FeX*T0;cW))F4l4AIfKr2Glft z?Uat$Gt5&1aqR6nSs5L&bgj4IaWbC^vD^}{{92xQ!MaDXY^9(N&1=HeG}4^a3?Q{Q zWq9gc|Fq`&vf{eEiI!z<*_&l12Jrf)ul| zbW+B>Ub`*U_PB!=;Nl89PD&dgDKZv%3SiaVg{3{wqiPIW-^JueF%>CoQ7*2PD2IqA z4mkw_igaS(+D(H04rCEf$}T3UYTS*6K1Z-#cKx-d=}dM~V@&@c^!br^%A7v}&$;i- zjlpJKSf~PnqxRdyRUSDKnzCE^&;svn0zH|eQ!WQ zVGWGCx=H>Q5!L@LJPG_y1#;(9{YnP>r_vd}DQX`fxpYcKG9A@nl`knJz5%%D2}H?!rcwJjN6qKa-{;59vVT}VN(GT?9h3#KF5s%Ha`DE8c;sp@N~`fTlw zv61~1sgN zT7$iIQ*>@9&Eah&<-vx6neuKLF7=o+c-LokxH+}Vau4{dn~RYY>`Rb9vFFa+YQvLA z@?zT50-b+uR%F;4(TUtVkuTipKTwGi*Ko&bjC>J*<`iiOkb_wig=+2QqJ*84fWeIi zM}H@cIRPizt`#WL!LS;auCg?#pbz-^;?#%Vd5P4q3HyM6rMbsv@Ya5-5m%z4Jf27* zLo-m{uEk|AqweTTO%zt1Sz`^32UHscBi>kMCys-IJaD;OvU(#`9v3i{BX1}Ei{z;t z2Zdeb{L%2*OButvEo+Q5o;jwwwbJ=clB0Q327p$t*nW2dCz*EJ839EF^q8W_iH)HN8=+lA)7P*GzacMx6Q@<}h3%d0 z%tOysUQ;9n^|aY045Oe#Z5uA5HYN{63WhJ)xWqcl#q~mJJ6Z;3{M6X%qnDN~a3_3s zXLSWTlCFrQPStJa;v$O@vac1E+Zo{Wh>Y!GN24p)(R3ZG)N~y$_#;0dd*?uLTXHb- z+Ma%{TW`%{hd~dS>*&cH5F?i%!RktdT8PQ+POi63>^SSAuL2W!VkD*M>ZZ%lda zbuiDw403UG)`7k2i+D>0k^w(mzN6yFA5_?jc<2FaAS|0L$;Fi` z6mBG3Vt%i?Jq*hla81Zs)-|`ONiA%Zb?4&32!KCMkx)I~xC)|GT22-6CnnPo)k532 z9+0I;DwSW|j9wD%*towivlem?kl7D1N@6ce%=W4A(Ef;`>u$i0AEF%aJ*a(PXjO!e zO}OnVme_SP6C=r$lgZ81DY*k8SVWdhQQaE6Z7v;TeHNdq zvae$T*pT%+sj48uVjr~Nq2F^2X7^l}u?%2cimeg_ma{{~mji~(J8Gvy?82gFE0(d5 z){8@~cHXI*l&XNu755DJLSL6JNa{+vQ1~V$3^lQuF!;R>S4|I~D4U7jnZ`~=GNM45 zu^jZ zyfa#>BBHP+NWM^dqn|L5AFG)X$mq;RY!K-FoyQ`bZzRGygoi}Axpd+CU}8you&1*? zexR%klFtvL)?+z>e1%e>-=!Fa0a}N)Cug;Kc~dzHiW%H=p|J0*4P~jo`XVPB%P)mG z-qrsF$*DifdWv5^6NngQ_vj3c6N`K%JM0b|;TE8Fpyw(TOKsx`6Tjsb$EM7l#IHo7 z%fIbXgEKF(lBG1Iv^Ghs6eGC=BxO!T-5 z$ga!>5S6mQ9mYC{;H5y8Ja&)qvOs<7Q@}8(|Fv_;Y8yq0Z#H-=S*J>#k8wb2*f*aW z3~<#6V+PC)Yqg!F|2y_-7a{=8$u3=FrzBg3+)?9@62i*F^DET(T%IQl329H%F$;4B z?K#Vw@bRz>phhShpcJ#K*LejJ_(oca76M1Ih!NHIU6awd%6Fig#x&G&VE{kz0STbH zML;JP=G9XDo<<)=Tgt@NpIvF^|Mb9d&TJ)2>i*z0UigAT`NtQv5uPbDE%tP4aSdB) zqevX$al;YSNOF%D@g@16BZqZ-q&_DH4Eo~3u^52j1@8|~8(O%Ho9*Nok`EY`N~(9; z*qjPTy`O24xVJa@5Gtu=ZkD=dZK+v@Zb4_&QSPVnvO2>}-~-6>OShiaRF_4gZZs zw2YbT*#=xX-x9iJpd(~_t=u7_BE7r=e>Qh#EQz$N#+(~#N|o#@SQ&+Psnd@mJb!PY8)Fq)I13%2n8-9V~s^od5TN?X9a7w`>|{OV3NdZeNdh-o55wXiB1DWPf2t7VhlAeN%4iQtUHrL}1*LZbahF2qgJbDsr!)d$IaMfJnY#peg3FrS~*`(JRvVGq1Qa@i}R!-XJy91LKtpJ#&O4 zs&RSd69@_2%6sB5@`&yy5k7JJj||k_1#JjvuGLOe(XalFMPn$EeBx*`ql6HKYcU@j z>jf7uL6vhnZ2k?`3P=T3aoP393bpZL5+?EwQcYU_!P;g6& zL#I1zKA+xXY_*HOoH!V0sAp5c+89I@u-1`*ATI z=>4|SicdVG&iglh0V$-uvFB*Fmj+mD@L=MvLUUgd$CR^Iq&VWc<>Y@oP&4fqde*c2 zRpS;*ylauyZPpifVh>3a7K7p5S_O)QzybB>QVFF}NKK1fvCU_7(v2$buwEeu1zPon zanT)@45s~c7eQqP{?uj+?DWK0H`4Oi%%+t6>+cZdRs&04M(%BcbXH(j%C-&>J@k-n zcg*L8IY&fJsuj8oE7Csi%rox&!qcmkogTgnhDj4V%F$+I!J}{oc%1N~4kwmJsp-LC zzoqAS$`P6S^1W)$lrjn={6|-&PDR$*QLcmlp-qF0UAJ1P!QZPId_YdrNXopw^4VCi z+&zWv_J-^}m(JVzZ&_Y8&7VP#-a2mf`@#ZrI*gF-BE ziQb(s$>4(dt0q;1kUZ?lvh>L11*FNV`BKB8I_*TDO)fS)&ONYy6-i%-w7g-$kg4BU7@j%XTX&4@&v~sj9OaQ3w3(IL z7PDp>&_nMslW<}wm!ct?OnUqq+)|1h7!}VV)9TJ6@72f1kj#L?A#$3$ttla2D&yJn zB$PjF)xLJMj^fcwh+KAUV`w=Me|cVyq`# z(#qhC9f+2Wf*Ra1WG2#=DZNB^kj`QQ5l;NmFPnDAzbSU_RX>m0zn(q(ofrSb!V9H6 zW<I)OZ2$5ieI=l^n!ZH?7t~m%N|-Zkb)D&K=@; zAwlWzqXImgnt$;PC3T}#!rXFN-X?Fr=6rE-hO-Z|u}B>owQ*VZL4#eVzKx;Y{&ROy zX-GnY=#`&7wu%OYx>QqgfFaF$>q7+l>R+5ftp_3_+J}x5b}2sH<+kN^r!7Zr2P$I^ zm_9y2HF)+HbH_-;kt#7*$x%uXMTVSPMcL3 zsjzCJl|feZ+z)pXr_7B~AA>y0Eqp)t57hO%yIfKgxXeRXGd}MMATtDWE8L{yzVn*y z+@dvKb*YmlTyI$jSTo!L36&s7hzBu(>)?CCgvvJTkepd;zr?wJc;?R_Iy z6!}tHvDQ0lV-M$>F>XRBTi3;0!K{zoLCCh%icoPt~BPM?2k6 zQ=k|5niAIXp}{9;KO+Lz;!xaahV<)$f7w?i`L-n&0>5kz7_IUh8abIv4~AVhx-xfR zF`;Hr1UlDboFZ{H^?@a4Am>l0t8{Ldv50*B?1q&^AM+N#(0@Pl5T z8_x_qI&3(Y^7OfJ?_rzaer1pPR}L3yBwOMKoJhHVzWiQ##M)E*MfDdqtyBBWPDbCC z;*0?idb9kg>lD;9BP2Ynd@0eH!PeQdQc2q&nAqKrLpPn|tm7R}LfXv0j6yS7*oPE` z5U}bxuTEw6P>05ecC+oNzIVO1%Z2J7>K4yLj+gC*xa02j72+<_MZ#RZq>g2`)qT)n zHUK?cV>oJvy2u054W`KDSrPCf&ma1X&(WBk!TnQj2@Y2FZSw(WF;OW+17r4GNq+~`uuikfw57| zpR>k0GXBv-ILF`lFs$3_BVu^dsgpTlGj}j4+^w~C9gT~?stvE6S_lntWJ`g2X{K1~ zNQK zh&Jd(oyp>n&02OxvDrG$`94H22W7j$hIy3-Yos>hy%%oZks%8mx$tEuh!eqhoDe2q zo3NNH1!ztx*kX>Fxe|jy={8jVA60lMvqU`m(mX=rx4r#x_OIK0ce>0* z>UgzM#?%IV484;(wS;s=!!~Ec392WU9JUnF!4X;^@`Mnez2ceChE)s2$DU{8hGPRu z2JW)-2&yK`y3M6=Y9)xuvO!d)?}*9*-VQwhVZ^@o#5mXFR7=JzHSG8nE@IE=+mM9R zhVJK3{HOK?wBBLtGQNxHXvn0ZK1XY>lG3~yx}Mgs>o(mwb&%F*-dQanvPNm02Whhz z+|6re0;KZ5w;WU|+tFU}hx~3|+`?d z8}k_fHgt@E9tD$?AA!BLSR@;$DG6h0``vI%)@@*t%bcB)(b#>y1a7;2Mb53zx3nhDS)FLAlrq8iI!Wa}_QTKv0O6zzH%WXkxVsJHQr22t>3=>1^IP`!J$TB&0Z2%NgdF+z2ws zCv1U?CY(clyF$qbv!w7N>ex9AScp%aCg^aB1=UY|6_d z8W|6+&(1}X*)W_F<_Lig?#zZ(3e8BZU!T^!?v7HG^RxW@S0P<0XHh47*5Nu>I3#_} zf|Y>h#A>WpnstpK<(~+`3JWdMP6b38sS=v7PN^f81jur49~U=oODZY{EaYC1d_@Ef z3b$X7CTFiEKyP-6fDq-AT-dJU+8nUdU_N_RPKFL?7?4HXO)mYk1FR)-s}C!Aq4`Z9 zL_e0|uMT3*v9z|e;q25s6f7y-e*Qu^q=sQYd=pRKI$d6mYTxYZVPEYN2EB&Do^*4^ z&esOZyCJpwyPu`x1F8$=)EyAF{1v0mOG05;en+z~b=Hu_b2Ah#p_sY`{&M7_#*0@u zP^@e&&Kw{9aB&fTwV*W&g@Xu)2Y<`4AT;p}RexEk61`mfF=oG8Na0(-gX1znzuIx0 zrpl0?U8@niF9wstkY0+@&CQFXQbHES(+Wv%c}8S?nf7o)pfzV>?s;BZgy)OiOVo8_ ziPV5AXdFv`8FEdGR8@n(hgBq$qj>IyzaQhDf4oJ%?sI&P#D5q$x%u-xUN z#YQB!#ioXffY~AWetKt~1E)s^eAQyh{8*D%FE%n|!`fD^J0Mw&5z)&F5-hE~C06tGnO03QuR5i6n%a^>&cCK`PQONqGt~oAzapT4h*A(R z1c7n%(vc=DVV<*G1LP8$*oL|sfcCdTi1dNVmpt)KyvPKD20gDU_65X(YNfz0#?d>0 zT3nBd-y0tgI?q1=(yVyJYvy9SLbM)nw-rToK{S@n3}%m+XjP>Z4t{vo?GWc8USMzX z`*{UZ*j~7~o~TXxt6BbVBliUdWv5|UIHU$Ub4Ez>Km~CzH?yOA_+#GS=AAqY#et~u zr1f!5(Lo!Nl<9!GwR>TSkD#9B^xh7x>*X6~!r(?%Iix$+fgjea#Qa#jJs+KTcjGtJ z1-%kM*vICN+yFY z`|5x%Y4J&1asy{Go-H1aV_&TRxglI?-uRkbooA|m8Tnwg~l-@jYmS_azK(*Nsrj} zb`0r0Fgs!7QVZr?iXMp{)$nBH_^X{lDWBVLvX_;(DqCpM8df1_61`&}4We1LzpOL8 zmHfdHe{_u1usWJBcU4Xp02IVa8eMOff4$csfu-mkAB+KAG$+wnYom1~bkl8I=8w1p zT+)3NF%Sw9qoPnOh;N2weD=JIN*5p*h4$1Oxi6q4I(AQ zpjde)G2m;^x(?*u%yhr43Psj)szVnY^*e;r&-^dQQULVEgH%AW2xg7HDjQKt*k~YXN1YmMu|f7-UTcY~tpiE$=udyqk0*Vv6ik8%4k2A%^IbgAFa{?VPon9f>_9BJ4I*=FVW>@_Jxb z)OOOHF>>z*nA6(_BgcSYOx3r47=1456>tFp5D|+}*1>LcMt0Slc@=kX6(n`bdc_k! zFXmLZ5e0l%EA7c2M>HU*D*#do#*snjY|&f9O1S1r&GF$`@`2Y~^A*aGi-^8fE(iuk zkRTYunH6txkO{n?1-4VAZqu*O$bC;@`Tw~VD(N0y-L)6Czt`SP(WlMF2{dxcIBmckM2mYAg z-wY(CO>VZ}Xa z=*5Omz-$3g=|>v>`{h4Wnj7Q5;UUL{iS`>_;zKKlvyklQ^ZiCCKq2rWxP(27F~}%N zLOqcZmiNTef&mP8?iPmUo!x1aRN7mJ3rlD?*C)q+6!=4LhVO(NIX5Vw#86Rlq*dyR zzu^0WEn=rhmT9HZ;!$_BUhLTZdOO-ni(S1+9DSu=k2ThoYKWGc4b`7mp!m@ig6^9z|WAvBnL8h zy)xU>u4ANvJ|EU&E4d~mxOwK^@0r*RP$!@PcQOR8egqRpZu)CbOGUwhFbF01soT7c z^MasW%QazGlaZC>UJtNLPs8!nOch{)|62BSVSpHV;l76z`5$K=N~yU51U!)fZf2kc zd*eIr7C?qw^jry_Ln5%|t_s)XC>Gnr@3sBIWYe`-;$chMiJnp11bl!*u-m5>rk~qG zggjS$pbM|V9p3sk#q5nvR?(>B%P}XW0KD*#eenaWUM6y`26yY1y~sFcn|$aVUF|;) zATe?HaGU(PT+(wiM6FAkok+>VYkf31wOe~5K;l+e;r@SK!>uerwi8j3k&$mx_kpGE z_DWoNVcjjLP?bMgOteBsi?$Mu^%X7HA*mD64wNn zqvQS5=Z;ONHVLdaX}^4C&Q}0YNrYDoeGSJ>8xk?Qx4A$QEsHoGjsac40RygQ%# z$-g@dMR7YhbxUF;R!b`n4RA@4;wfGb&RUH?QTYXCK^|d@iSr(luNE!vjnbo3W}2kZ zWE3l#jH*`D)$TTJ!%ZH0`b!F>A;Kt?&gLb~Ce^HvKa{!}`=bJ;QZ4yTHRpiJp|YhM z+tD3><<*^aNr?A~>TUU;`v95h9V(=j+Keu|Nub)EOM`6{Ce>o2tw7yR{X_S)<ktWjg*?p^ht&HGJ&)t-aDcN2qKTruQPolU)K{UI=dkv zFBGhiHjZzq&eV-!$<7Xr7t#&@sZ5=;uBjgma=$eqqNwZT{+cT%L*L62vR`4iPk@y{ z-}4MpzsWhi?)(w?2xiXF73?+~=2_$OaVM|DcGNQ4zm`JlN>VjY%@xf0Nk_K$^na2u{Y{HA3PO zO-Vs1Hf0m(Ul+jW%MF;C>2rDjmNPx}y8A~wL*ysVDrkHu7RvBXr*Vw6vJtESoGzUpNvxsjmbK*6$&ao9jLh*0)gTs-&|N2 z6v&(`^$Z(@>ndTX1DiRqcdoP4vX<*WoZXVRW#YiPt~RXLp&`~p!N8rW%x05l%g&t% zI6x}s`?rSgSvRcwP$jm3wZ?;34LWeJkjOBL1B;%%=Q*(yBEbmL4?cSw31MQs&P5r? zA~@Jg83Hx)LIN*m7#T|-;BAV^rze;?GmCG;LIg>g)*VUX_Io5XoS0dWlZX6gtiZq) zlTtX>)HMbI@siBTBa0+o4~;Y!zI?+(s`wQH0mg5>YTx`}pa4a%l5Euc6wZYp$dZXy z9Pgbr40om-P=iMy?oc-)&RKz`z<+A+!UDfeG4sOuuN|BwTBlB>V)O=Q5hy6#mZP4#1=xL`|lD-mRFyZn;rm*mg?*=wp9;b8(rM1Agp7w=Tz3E z9Am-{&H-D2ITbJoBKGnR*5M?-T{#kBZ8p-|+O(+!Tat|&H!KadX>S*t>n}&>QIv$U zdEv-lgQtQv?L0+b@z*NG_-PEtxuA;1m{k59HGDF=l_-o-!&}OCU0Ma7(=nJu5qt4< z4(U^>314RjrLIfe+Uem5+aeHO0v%+o0}8(1R+NS54|X9O3qfiA%aVMoYnrkL1=T~g z3h2J}{X+rWAN6zJ^T|D3GqOo9zZgrGbK0TzbIPSv@3QrrVg$gq@!H1;)AyL1g`SVq z@Y4HBYP4^8<-)UyS%bg_j}MF*eIV+oM1W(4#IFJ-mz2pCKa<*^LVz8MqVBfxU7YnP7aLGE;aAG zIP&3hSQR#M*C<>X%ra{cje$$7YjOe&g_QJhx9BeH&tf4F*2{~TU2_C5GV!X*x!^S{D2C}o%>|I{{?1}XBtIeew6G5IT6Wz4B++pn9xyiNTY8c+~`;KRnQmjwGaG(Ah;i> zZ=qTVH}0!5-8G)`V-Fd=U?z!uHGQ-G2kI5%>g@^^NBTh7zuwt)Rxk`P; zgXvpESgKoUbvblfY%ur{0o`QYoUGfchUXp>6`6O88hBj%F&6Om!7w~EA`Tl0$r0vm zONQLKL0D=5wZeBaQLGX5_WGFi&D_`h%vNjgU1?p7vWIuhI*H}va2L+@oLjW2%2au` zCH+YDRYCwgNDNFLaOoO@&i(-C>>Hj95!-V1*$?SLSbLJYb9D!Xm-X^=XpA-(odZ-4 z;A3xv90lLNe(Oe#fRyer1{m7m*`p`i; zeyM|f@!hp|@C`oWv=WLb&U^fh@T}5SDe!C|^+f3n)t`mdz`OMDXkIamveLjlo=DwJ z>ypDtE{>*Zoa&mP-ydO_f0L0+28}dEjd_Z#KyurD}K^b0Fv|W7t)Q|Kxfl{Z`UR(W1u0GVHC#bnjmRl z%d^XX_;u#q?^=5b7E|j{ssI6t?Xjs^u2zm!^nihr)?QzW*v@4?>Dd8E-C6AUCTO+I zYvCO`b6lkGeTT&T(E+dIW%U#Bhf9#j{dMzCLWbfgf(mZvIzOY5^{r}lIU-oY?Y2=v zQ#v`$`|&I{jBqb4$3&;ceCs z)c0ZjSfo=&3LP26`y>U;3YfGnJ8f;?$*PYu6gTZw_@M{N;YMe$l-0#q>ph2p95ZTP zy-67A&3bx!?-z?H7C z%xXsM+CfaC$>nmi>r7eJ^YcuM!(k0_PoXO{9P1==Lx2psqN;KH)!%B&!FqR~Vzoaa zLtVqM8$6jJn(0qc%|&s8RF^I=0Tvw$vna8x689tPgXszwvi1h4Zj8adozNgDrQvSu zX!9on+FWT(Nq6au`BHx6#j8F`2;UDaar;|e)#&9M4(fgz?*D}KSqW6#!`n|n|6V5_ zIk5NvFzYI~mo89T-3EeDzl?tH5!aS&u|uLKZBr#cDf#A6Fmn&|;UYiPD>psD$Qqd( z4NaoPOG{^Ybz0>*d7B*37?;;2LC^} zwFvD0Ke@K(Ka*H59P`0=f5dNR_s=Ey%QJxZ*Z<@OWJ}Iin%y( zdmofBgfBUhAR({!#)slT+2*Oi?&o2P#5Y|3x7hJ7p(Dx0XX~hw z<_7426-tyUu9Yu2`rc{l)4$!ta4RiIdv#d0HZ1&D_4#|z2f&>Hn zR~Z2=z&>=?8eq356+3*0J`I*6UDOCmg^;^19WQPS#oY*&@_**MoIAeqOj^P>18AU# zIy1+Y^;r1_+bJmh%I-Ou2Q{y$23Laii)qkzTD8E%MgI0cMjk@k!GDw=p|>jTe&u9x#l=7)|5A%Ar!sluV`xY^&q{(x$e~P*O^yYVLJbu zZcq%dMq@n_ImfwePjI{DaD2e>M4Mh_Euid5s1KsISG><^JIT{(@N$4{qtWnOMczMN#|ubt^B}4C;HONquyUXC$JNL zwboR%rhF_9P392Nf#E^g~vm(@}Ga19XrFDctq+QRg*{dlD);5NbgbVaCk*-O2{ zZ#~GwB@A%quadCJB$Olvdi+!$xrQ%*etlT>A-#kG(eZGd`lsK+e-)`3PIAK2;>*>7C{^_4sOTKnrp5CD2zARL(WHyr>sa|5$FZ z%0VoBtm6M2X?7AdjAp!`dEBP=Lh`jI+S#|HUYrUa zyu>1NGO>xDIDt;zSdME8BwAjL^g9!Tb_>oO=fc80DHTQy*tO$~*AEZP$C=dq3j4s!C;?d1nl3S zv$45B9dVX3CLXXe0*XXg@>q|lqyPP^ZmXO)G`1O|*#K99CM*j;*ebGW;&aW1cOr?2Vjj-bP) zG8J&F4;f7;9hoRr+N;uP+(_$9e&r9QH+_fFPTXMYsq_MB-Gj;1wWHl_1L1^_m5lgk zMEHhLk&5lDaSe%P>ly@Y0Om?GDxR4fE1fsMC<+omrjT`1_WT%R1m(~OC55)g+pYX= z7K8;)C5Wm@+53BJpU-WwTNe$Bt5g~l9&<%!lG}DME{Vi0@&Odmr>%sgtXJD_T|R^{35k|9rb{=UVpXC zW#dUNXv#^m7tp6Sk@vA(>Aw10x^~-?DFZZm+~xbsgy|*lweTLM^q9|F299L}JuFrp zSz^qXtuP>Yz99jm$c`be(6Oye!&0CzxzSnkr-`0)4|O3&`^7fw&uMXpd@+B&Y1BtU zJwCo{xrLgWR-zm%yq1MZ-?b^Q;aisS>v@&8J|DO`cHb99zZa3?h~z7`NnU;J3tp4L zuoJU?iR43=KM!LTE%b~zbY!N4e&d(aIs2?+ z(?U#1P)z)lk~;j#T!{&;IUw4cf6Uljl`uGGtg4!06mV|e#nhHQ+eo|hX3xEhDG^%< zU5K4~&K7E6hVa%YwyG4vSr{z`Z!*R1pzKtnj{#Z6Zqli&!kMPaP+V~J#&ZmRX!+Kb zu;a+YOZfg|7J?3T!a3W?zV6B3l`-D>M?vICnCcY*ar={8jA3s}#aJ2s$m8r|HCI_&8|s^au_4}e@5%bj4AMQxyYgS%fgNU7dIi1;T{=30m3@9 z#rJ_XX<9;d$(Yiz89q0O^eP%D<$XN%x>$FrhG}$tFy_Gy~-71 zzMYyKARKL8s~e|*myC#v^w$jhGYW*)kR}Y#K})gLrK}1m=aTs;jP&9jjr7LPUuE01xF|@dVqRaN#Yh$S-CO|D>@Gd&?uw$y zl)277`yOaO*&3)Ra@~sYh}DgAP$N`6P9Vg;CxX4NsG9Gy=IFFlO%!gXCsS>GTz+&p z@U3XftQQ`k^w+=|d@;RR2&5{aao?5`k+7o4I}sTs&6^pd5&lo(APB@Hm5Q}#R{^n9 zhk{jmeMPvpTHm8h;t!Wiv5{UZJI`^7tz}(3XQery#aelLr$WGtYzu~QpUA7eE9r_YGAF2Ednt?nG#h>rA-WlE)PBBbXKGCyFX5?38Q zbnB*9k4JoyiKyZk`G&vT7H=~Y6;E60v74=s!J@V!1?uaJGP&`L85*cd0u0fo1|cP9rh`-W1&)9EEGF0 z?dm7|9nW(zS!630M6dMLEl$j>I89%&+WOM<9<+)5D5*@}i|5`DDPJzqDJdQC>WTo^ z`$Q?tYlsQOHV?KIlaO8ZN>`80p?!;dVDL-Yk*foh<)kTr;REW0HkDf+HezMjT6VE^ zYvV8u;mja!GU#hCBxvPrcKGgC5CQ%o0+fFz0?>vtRaO~pi2@LrMO)%SwYL#$J?0_A(gUKML$9y z2mn2nRoQi4miRh8IoyQNr+pVX&PP0Rj1Q$0I%Hr3p!r6Wd>;>6^)_BTisJs-Ty6DWtSGQ`vl7C|g>H|tA{XC&t&&|d^}e zz$L7KVlsE?wI|I?|2(&qexy^_|}-P zBRZ+}x50yok*RlktQ!hU8csa6_Z~aJ9C2Ad`}^oyj=)Z+Fxu}Y1TM^o7D=C#)dLI+ zXPsbAe`SmUY%Gphmo=G`*}0SlZp_)?Q#(2;{9>X{^Kfv8#GBqJQuXWy?{<^j;-0H+ zcZ(k7D3!8uYgz~-;;D=bzL7QuUz(nFOe(d$&vpPRG<{HziJ`%ujB!F1NRb@6-6Tim ze^26Jkla4RV{_k!=`h$VCtCa~msOLo5A4|R^i2l9X7z~d#}^Bt{FjnSIh_?xlcrwl z9O7k2{xyvCjtW|)ImtUkOV2N-!t(>YaIDD|3=BfyHV4l@WII^&4nBzz9=nz$5}BDocJJ;8 z_H^b3_SsXoLDD}AbxJ!N={!i09GGML9j{68{bs$l-Y+<~TAsSNp?8>V?a&i4yL;X(ZVRo1 zn#icDP6HJ#O4RWiOs}J?W*)xiv+K3n!~hH*1CPk|N9L_PWMt>NAq0UYT+H-I2-RoM zjlEcCaLHeJD}=m=Yc`^m2UVz0x<_No`2(9xAnSP(p;EG8tm`R3$RxCQ0X!k<*g1AY z^XF52CvK}rFbEkRigudb(HDE9TMeJtje8`m4+@;p=xgacp*aeR+U->-J-tZ`2H@Uj z)xc(>GYp!{+%dHK-b>F%6+Wa~B`?3piAzyM$lxrLYq#)Ty;t_WY&s4f_~RjUo5W|d zTRoGmP{+3BN*xg!aGT$j)qTDmb|n!VX;m}d%IP}u)UzJjigTmhq#jDs_MaPvu^mn^ zc4Jy`&PGLunY$5~PrMSJt|_bmc(tT~?R9){)SWe_mgJpl2|Gir&}98tA=R99pYW)p zOrLu$&_#!#ceQz|iz3#AL;)hZyO8#?-xpJ~*~ZGF%QJb>4)nTkT8&8l! zHeWMWOL@S|HMKgF1>PiSUEA)II~wshDbwwHTT`lgjR>06xiQ@^51=u#h%a~kw93^1 z!vyh`hnSTKimg1ev2Ljodbf$WtxxM@+u$ILkoOD3Bl#h|{=)tc(Zu-{42EEi+-_`~2Bw?o!C0}5&V*Wy!Z-!Qfagd#oRg;}-P)o8y7?;DYvP28JU;Z}qa?3n zP_2TjoG#lB2>^v+9@Te+wrg|lJ?{7WW&#k?+IYIBR}1WjEc*o^rZbn{w7)7Z*F93^ zyOC!{wMp|;$zN>M#(a7dXHo_hq)mEE9pjjq-gBOl)=|5edVz=akr#%Cs1 zc{XM{IpuB-8#Lbe@D3_fbs6z!1*q|4it+RUu14fYr40JqzEaGFD8h6BwY4)khtiHp zPO8WRsBW8$$0VTn3Qf8mRTfzK5j3hBB!71xaEyqjHx^@BvoRO}y%0w{?g;xu6?pF8 zPCv2%x*HHoMcgRkf+y2NRnDFt&fU1@l2)ZGV^QalDaNYxcxx9M&e_cjxN`PRB^{3O z)Y&YhawPM`YA0kG{PQfmG~|}I+cH&Bk+D~KVV^-h+qWPqr7Kpm`Yli@hx-4{yu>_+NRydnos_xX_n7r`@)MnD6Iqvz=I-YcU>wzh)OE5 zvH-77IW}lB;DO)MVG+VN+!O+RN{+1ahkHNJU&QJX8Ip>h`*z(k+*&JWu#Z0pBY!5ddSR| znp6xVleJj4mdVGcflssnLGus1BTT&Acln)+0kM_Ujt-f3KP6e-U@n5^v#ZQJDkMmo?l6l+lr-oK4-zDPZM|>9j z%N8jVO!-pXFV%hQ5eb=w_vZh}bdF8ck}|-K3+(kve{@`6Zy+!zoA*?oaP6Xa+z|5u z-lob17$C0Vua&*C{P(W=1KB=#*201IM|taEL5gR@One(d6eUl^`oG6L8xACBNDwIG z86t7>WNV(ryvmWrsm#6d5NKv)wjcO^Kb5Hz+eVksH2Zd^>g`Ut4HJSRg25w*@ z>48Sj-LIWseAp1`ju6ujW<4SmAq_e@@Cy=#2EoRo$_BI-&os5Il=oTZUtUm=%gt+0 z{ra$|%LkI>CqkTL%Baysx@6f%>*JT52WV&PMTQ{rr>D~Pvq(YAgoEtW3E%cGhiYb= zC(ph;HDSKv<{9mulIh3c{2`uNg#7$m;^5;6;jx!Pj}VstC1Kk@6Ghu=FFfEIHW!d` zqD7X<0YlCp^kJt?Wj)y0Ru{o<|FE#M*c7;sqD~3L8K%Q$z_j~lL?h0z zY0|LmMihJ;&N(~ox~S>j z*9W)_XUmP7jXZ<%??`)wp)O#2(GCvs+H7+JldE6W_?tiHrXZXF)9*kRL&*2-?O2Oe zqiU)=)U94rP{hsESJTpNlTCZ97VBjgB>DGAR_#xcrOdxHt~_vU(wKc#xH~(J>YV)R zknJtAXKA27j^N$#d`8T?2}Dk{w7ZmHU!~zg8vP75yN7rd?a57V*3YHoV^hE;rNCbR zK02eKC6?~eGKbN1rH2`WqHPXBOVSTO+SZc~G-S00d%8L?B+G-8*~*5kh`6WgLbDtH z5-c{%@Ui`*`;&VX&Y)6P#mwq&d|-T{4W4Gx=;1lDxO2Z>#pN6LVh9(5F1XL~A*C|V z)O%QJr7`7_2-6HwAx0Svc9mdrkOgoFAV zs&f>Xm=!5&eRMHi_ZKs19!6YckbHiK=dH&YlLQ)8EFC;i7H58^`5)7P9y{le$)`{4 zJ`coD8-#_ef}5D6X2Yhr7#77reqTEtlf-H@DIrD@Hm!ho3vTPC2QoNF^ptRv3R>wX z2Mbx5H+6!{H>p$sD!}k$R_cST$~`cj>^?_71wpF}AWhD-?Bd_OFKw1j$40Ap zVCZh!3Y36}b&(RjX>Mys;xaljP~ZFOoJ_T1Kbs>;slZ=_W8qkIMOA1m(34u5El>PJ zi1rb0sZXxlS~OEgfP*qUADtRFa=>27vMts|LwKdxEtK51H{CNwr^ZKK6`yOPZ+jiP z9J(6b7K4I|=2vsEwI0^0wMC-sMh#0xd)25jRQ2-tcbqX;f__Q$Q>z;CS7z6lNXK9+ zs-yQBjfy1cPxxQS*Z@BB@KAj>JmQDDQs`-s|F!z+8e7Z?JQ`efzN;A0+HJNSsJqbcE^#1CuM+9iRErKR zNQZ9g#nQHho%o9rrGs`<$3(3g-?K2FdRrDKos8RGm`MP*cQLyL#|ikfMwE}OjWu;@ z2Cw&qV5i1AMn*+Ndoc}l%N^TPz{ezfyYy4K1sk8f>DovOScXrBSceA? z-!yrNO*ozWc|tMoy2bfSzi~b6#@ES1eQg;y)!R8kUgXn8w(%J>4Sw*M z=)kyQ6S!1`e5U$u`;w2;M`gWzOhUXrRrr~Azw=;2 zY=x4)A+0ZS6v^k^^+FwWf(d_MvJNTbJ-G8lN8l8O1ZgmVPNr1*$(mQK*3EVEv2kpw zZu)N{Es8cfgDG+HyKf(qMOm{IKoL9WNG4eEhiW*WO!=dAI+afL>M2MxZU(lVhii<4 zZq1&kUj2sW;p6}|B>1d$3xVHqwl?VyEix0`U2B`Qh~V}cD6@H%~E;0vlJ%o#{HNbm$Jn}@8JY;%HzxhLh~(ZR>y|i z2wcc|mmZH6^|KNHI!&7Dc_y*XmtIq*SaBb&o>?4Y8EO)yn^1| z0o$Duq3h>B_sKY%w)7=vJ+U+~yG!U^@B@w(lMLv%UO3a@#g6wF z(iL#`nD%&kIzaVGm%dzS!1Tw4PHo_VzVhf)J=~p#>DzQ|%jlTVv#i$?_^-0$$hV-b zJ#H=$-?iNE((;o+1do10oXr^z>e}s8-1};cx@1LLe%*oC>=9|++e@FL?m^22hcUJnX;LH+M_gCy6>?r{rMr1VS!l@Y=dU>udRO;%7+}6CI z(HUO%f>CxAP4#%zft(ZU2k!&OdD!HTctdlsi@iZhp!v3l&+Y+>>Ue=xyYaaP!dI94 z9(%e5Oqut#bu6OZ zsWGi<@FsF1Bv6DHE3~WS0A|91GA3dz0qdfq!Zv^VF&vfI z2s)sEuk*Ph7XF`W8nt%swSR_Rp{}d+#nq{uaG#49TGHWa`6v^RI5@NCVrbAx;fWCV zO(sIk+hoM9yzz5`r^o4JN4ksK7D(HKq$M{r7 zdENKA<0B(r1fbM<>=M;_Z`M|$J2kjuZsRHpy1J^_K__>e2QPEB20*A5be7^RuIHU2 z?HYRV*8P#+{#=jcfx@?dCcjH(h^oo@eR{+qYD93R%Nw```2NCdoR7x@hndT1_c>Ep z?mmKUg-GD%&>fu2sXa-iM=v6+zG)3MkA>UdL$ z5tvj$k7NbyeuVl-E#;ZjxDyw&XcfyFUYsK{5nJW&%=kwmP=qCiFqEVstE_N_Tov=9 ztEiSMxz^Ft%@%X<`03Q=H~E^3;V12X6WCrhcC%hyphX3{?ynZ}?QVX7UAAPS6>d+z zuKNZUAiG3Xg7VP|(+5vi zHfx$r9vo^?UWtst4!Bipgh9Ntl{Uv%;3EXDW3mP+Ql)5)>nwaxf|ettpHOx$^dJLh z_o{CLw+np?mG*HVL8Dg#20(qb_YLz@9FPG|vdOhn}?eL5gWa`o%st^eXv^BE-b*To|xb>m++X;}$6joZNz0 zM|xk2S}qGi{(|X*z9QD(qpVF5SXB1LLO2z9ne~L(a+o z+YzhHX=hgM(e&87)d88ouLp9T$9IqQ>Jf{TBI;$-!i6JRE&PX|*j4OqJ%(Y9G5kb>ZQc7HtdbNe{e*F0`w%rg7Zfvn-vknzKQ2F&k^ zm4-@=)#I+QEed%q&~ZF-C9k>3sg&I`(YsMG`3Y{A{?D+z%PXhs@}~+ zSo1n&oOhefawKb7S3nGlRY6nXPZQ<`tANjjsrS5*9Yn32w;YQ<<(|#tSmh@ZL$xoc z$vBj@(IxIt6~&NHa}=B!c&T;SJ431S_tt#e=WdqG3Walth4_N-156>2YqslG-V*YeikE2p7gg zO{Mys*@v{@9@h(PhVTSV_cPk-&Nn1(pE2>VD{guWa&I00BQahBrVM6Vi(e;)R~i5j zvQEIH$afm<_+)|@a)Zfi%HC%sQHk5ZTkZCQ>F=c6)TE^$t6{h}yV+J3)hWM+fl zuX?mH?J#-mnAjilLI0@(@ zzD#sNz@n?-T`yhA-9+OVR5EKxf$>!Q5Lh;6tNXAlXqB0%(?RQ+HoT_jByh`sA65A% zmk|5TbtLvNeyn$amY)|Kmo`ygdOaKSc*EO?#YF>1Rg=7<+Emf-G0r7=NYU-E#Md-J zyM|~QlHMl3dnsl*(Zt%vR5u7v9^4=98ca>G=`Mw5rbumG2x6KIZD<;@SsSGj!Z9(D zgBBd6YC=38x`%$uuQT>3=P`}_%-3P**qi`&0=yPXPl}ivDmp6dsYqKw~ z@gJ3DBHjGZE?HIJF*%u@q#*+O$&2YX17WB^EXLryoVEMc5{9QOdmro?BPzbon3SbiW>=U4WGm zt0tqKbqQnuqjewSV%CmuNxff%mspx8S2}r;E9rO}FU`q>gc^Dly|YX_OH?6b5; zZ}IaEx+}m2FX|2@hEu{(9Wefo65aJ@HzWpRvdm2MPd)0JTH|J`(hZIW;}ohdI|_$h zhC)2IxmA6ryK@4xmHtSlynQMoG1h;3O@r|~5NH7BifQLVxA^<^jB=BM^-qqcfGe?>9hCmCl47L8*xX z?HBH%av*cl*$dE@0-uK{2>l-ja^%8!m2rhkfjcz1U%+tW$#$5a$B=0AFkZsrJa}O+ zGQ3Z&JGD_9?}gGpX{}1o$uDgqpKD6=-ID9=s zD$-S>c|$hrp{s4-2-$r4`b~g|uEr{x(HzXP4KztH-}=v0;7MTqtsV=szW zbAeMKBQtHnG+_4%XfzTd;?r|`14lgYG`apb|1dr06)t7mYML9CP@8T|G0U4(g`A(? zG9Va>H+eeccoz0cg5qSXXiO^IABlbPCaLQo-(7%X2Dgwo94a`b`_6$-bIMIFLwcEo zJ0~hXbu|5ve-OLLgw8>BY#lr7)Tm`kS>5aqbIe)|TEIx*_vE~7Fljw4H`Vl3e!Gf- zsh;0L=|p>AIFhJ|({I%V>{g!ynz*oZ!~_QouD;e?AVhAR5DB}koT&V%H@)NL=+esz z5w&9N_2(nX-#a9JCzVPotx@kr%1OnJLE)as;I?5CNj`4C_hfATZ+w(@u)jCypE6UK z0kVB02Y6�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

    #Lo+gTT7vLQ+uwvuR({fg5$R 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 0.8f) + assertTrue("Search options control should span most of history", robot.historyFilterOpenWidthRatio() >= 0.8f) robot.openHistoryFilters() .enterHistorySearch("Seeded") .closeHistoryFilters() diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/robots/TrackRobot.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/robots/TrackRobot.kt index 3a6e396..530540d 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/robots/TrackRobot.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/robots/TrackRobot.kt @@ -173,7 +173,8 @@ class TrackRobot(composeRule: ComposeTestRule) : Robot(composeRule) { fun closeHistoryFilters(): TrackRobot = apply { firstEnabledNodeWithTag(TestTags.TRACK_FILTER_CLOSE_BUTTON).performClick() - waitUntilTagIsGone(TestTags.TRACK_FILTER_SEARCH_FIELD) + waitUntilTagIsGone(TestTags.TRACK_FILTER_CLOSE_BUTTON) + waitUntilTagExists(TestTags.TRACK_FILTER_SEARCH_FIELD) } fun assertHistorySearch(text: String): TrackRobot = apply { diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/components/EntryBlock.kt b/app/src/main/java/dev/tricked/solidverdant/ui/components/EntryBlock.kt index 279dfd1..0f3cbcd 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/components/EntryBlock.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/components/EntryBlock.kt @@ -78,37 +78,42 @@ fun EntryBlock( ) Spacer(Modifier.width(Dimens.EntryBarGap)) Column(Modifier.weight(1f)) { - Text( - text = resolvedTitle, - style = MaterialTheme.typography.labelSmall, - fontWeight = FontWeight.SemiBold, - color = MaterialTheme.colorScheme.onSurface, - maxLines = 1, - overflow = TextOverflow.Ellipsis, - ) + Row(verticalAlignment = Alignment.Top) { + Text( + text = resolvedTitle, + style = MaterialTheme.typography.labelSmall, + fontWeight = FontWeight.SemiBold, + color = MaterialTheme.colorScheme.onSurface, + maxLines = 1, + overflow = TextOverflow.Ellipsis, + modifier = Modifier.weight(1f), + ) + if (!time.isNullOrBlank()) { + Spacer(Modifier.width(Dimens.EntryBarGap)) + Text( + text = time, + style = MaterialTheme.typography.labelSmall, + fontWeight = FontWeight.SemiBold, + color = MaterialTheme.colorScheme.onSurface, + maxLines = 1, + ) + } + syncStatus?.let { status -> + Spacer(Modifier.width(Dimens.EntryBarGap)) + SyncChip(status = status, showLabel = false) + } + } if (!subtitle.isNullOrBlank()) { Text( text = subtitle, style = MaterialTheme.typography.labelSmall, color = MaterialTheme.colorScheme.onSurfaceVariant, - maxLines = 1, + maxLines = 2, overflow = TextOverflow.Ellipsis, + modifier = Modifier.fillMaxWidth(), ) } } - if (!time.isNullOrBlank()) { - Spacer(Modifier.width(Dimens.EntryBarGap)) - Text( - text = time, - style = MaterialTheme.typography.labelSmall, - fontWeight = FontWeight.SemiBold, - color = MaterialTheme.colorScheme.onSurface, - ) - } - syncStatus?.let { status -> - Spacer(Modifier.width(Dimens.EntryBarGap)) - SyncChip(status = status, showLabel = false) - } } } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/components/SearchableSingleSelectDialog.kt b/app/src/main/java/dev/tricked/solidverdant/ui/components/SearchableSingleSelectDialog.kt new file mode 100644 index 0000000..087ed56 --- /dev/null +++ b/app/src/main/java/dev/tricked/solidverdant/ui/components/SearchableSingleSelectDialog.kt @@ -0,0 +1,166 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.ui.components + +import androidx.compose.foundation.layout.BoxWithConstraints +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.heightIn +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.safeDrawingPadding +import androidx.compose.foundation.layout.widthIn +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.items +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Check +import androidx.compose.material.icons.filled.Close +import androidx.compose.material.icons.filled.Search +import androidx.compose.material3.DropdownMenuItem +import androidx.compose.material3.Icon +import androidx.compose.material3.IconButton +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.OutlinedTextField +import androidx.compose.material3.Surface +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.RectangleShape +import androidx.compose.ui.platform.testTag +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.window.Dialog +import androidx.compose.ui.window.DialogProperties +import dev.tricked.solidverdant.R +import dev.tricked.solidverdant.ui.theme.Dimens + +/** Adaptive, searchable single-selection surface for potentially large catalogues. */ +@Composable +fun SearchableSingleSelectDialog( + title: String, + searchPlaceholder: String, + allLabel: String, + options: List>, + selectedId: String?, + onSelect: (String?) -> Unit, + onDismiss: () -> Unit, + searchTestTag: String? = null, + optionTestTag: ((String) -> String)? = null, +) { + var query by rememberSaveable { mutableStateOf("") } + val filtered = if (query.isBlank()) { + options + } else { + options.filter { (_, name) -> name.contains(query.trim(), ignoreCase = true) } + } + Dialog( + onDismissRequest = onDismiss, + properties = DialogProperties(usePlatformDefaultWidth = false), + ) { + BoxWithConstraints(Modifier.fillMaxSize(), contentAlignment = Alignment.Center) { + val compact = maxWidth < Dimens.NarrowCalendarWidth + Surface( + modifier = if (compact) { + Modifier.fillMaxSize() + } else { + Modifier + .fillMaxWidth() + .widthIn(max = Dimens.PickerMaxWidth) + .heightIn(max = Dimens.PickerMaxHeight) + }, + shape = if (compact) RectangleShape else MaterialTheme.shapes.extraLarge, + tonalElevation = if (compact) Dimens.Space1 else Dimens.Space8, + ) { + Column( + modifier = (if (compact) Modifier.fillMaxSize().safeDrawingPadding() else Modifier.fillMaxWidth()) + .padding(Dimens.Space16), + ) { + Row(verticalAlignment = Alignment.CenterVertically) { + Text( + text = title, + style = MaterialTheme.typography.titleLarge, + modifier = Modifier.weight(1f), + ) + IconButton(onClick = onDismiss, modifier = Modifier.heightIn(min = Dimens.MinTouchTarget)) { + Icon(Icons.Default.Close, contentDescription = stringResource(R.string.close)) + } + } + OutlinedTextField( + value = query, + onValueChange = { query = it }, + modifier = Modifier + .fillMaxWidth() + .then(searchTestTag?.let(Modifier::testTag) ?: Modifier), + placeholder = { Text(searchPlaceholder) }, + leadingIcon = { Icon(Icons.Default.Search, contentDescription = null) }, + trailingIcon = if (query.isNotEmpty()) { + { + IconButton(onClick = { query = "" }) { + Icon(Icons.Default.Close, contentDescription = stringResource(R.string.clear_search)) + } + } + } else { + null + }, + singleLine = true, + ) + LazyColumn(Modifier.fillMaxWidth().weight(1f)) { + item(key = "all") { + SelectablePickerItem( + text = allLabel, + selected = selectedId == null, + onClick = { + onSelect(null) + onDismiss() + }, + ) + } + items(filtered, key = { it.first }) { (id, name) -> + SelectablePickerItem( + text = name, + selected = selectedId == id, + onClick = { + onSelect(id) + onDismiss() + }, + modifier = optionTestTag?.let { Modifier.testTag(it(id)) } ?: Modifier, + ) + } + if (filtered.isEmpty()) { + item(key = "empty") { + Text( + text = stringResource(R.string.no_results_found), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + ) + } + } + } + } + } + } + } +} + +@Composable +private fun SelectablePickerItem(text: String, selected: Boolean, onClick: () -> Unit, modifier: Modifier = Modifier) { + DropdownMenuItem( + text = { Text(text, maxLines = 2) }, + onClick = onClick, + modifier = modifier, + trailingIcon = if (selected) { + { Icon(Icons.Default.Check, contentDescription = null) } + } else { + null + }, + ) +} diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt b/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt index a4be3e0..769da27 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt @@ -22,13 +22,16 @@ import androidx.compose.foundation.verticalScroll import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Close import androidx.compose.material.icons.filled.FilterList +import androidx.compose.material.icons.filled.Search import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.FilledTonalButton import androidx.compose.material3.FilterChip import androidx.compose.material3.Icon +import androidx.compose.material3.IconButton import androidx.compose.material3.InputChip import androidx.compose.material3.MaterialTheme import androidx.compose.material3.ModalBottomSheet +import androidx.compose.material3.OutlinedTextField import androidx.compose.material3.SegmentedButton import androidx.compose.material3.SegmentedButtonDefaults import androidx.compose.material3.SingleChoiceSegmentedButtonRow @@ -38,9 +41,11 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember +import androidx.compose.runtime.saveable.rememberSaveable import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.pluralStringResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextOverflow @@ -48,6 +53,12 @@ import androidx.compose.ui.unit.dp import dev.tricked.solidverdant.R import dev.tricked.solidverdant.ui.theme.Dimens +internal object StatisticsFilterTestTags { + const val OPEN = "stats_filter_open" + const val PROJECT_SEARCH = "stats_project_filter_search" + fun projectOption(id: String) = "stats_project_filter_$id" +} + /** * Persistent filter bar: a "Filters" button that opens the editing sheet, a legible summary of the * active scope, and a one-tap clear. Active constraints are echoed as removable chips so the current @@ -70,7 +81,7 @@ fun StatFilterBar( ) { FilledTonalButton( onClick = { showSheet = true }, - modifier = Modifier.heightIn(min = Dimens.MinTouchTarget), + modifier = Modifier.heightIn(min = Dimens.MinTouchTarget).testTag(StatisticsFilterTestTags.OPEN), ) { Icon( Icons.Default.FilterList, @@ -179,6 +190,11 @@ private fun StatFilterSheet( onReset: () -> Unit, onDismiss: () -> Unit, ) { + var projectQuery by rememberSaveable { mutableStateOf("") } + val filteredProjects = remember(catalog.projects, projectQuery) { + val query = projectQuery.trim() + if (query.isEmpty()) catalog.projects else catalog.projects.filter { it.name.contains(query, ignoreCase = true) } + } ModalBottomSheet(onDismissRequest = onDismiss) { Column( modifier = Modifier @@ -202,6 +218,34 @@ private fun StatFilterSheet( } } + OutlinedTextField( + value = projectQuery, + onValueChange = { projectQuery = it }, + modifier = Modifier.fillMaxWidth().testTag(StatisticsFilterTestTags.PROJECT_SEARCH), + label = { Text(stringResource(R.string.stats2_search_projects)) }, + leadingIcon = { Icon(Icons.Default.Search, contentDescription = null) }, + trailingIcon = if (projectQuery.isNotEmpty()) { + { + IconButton(onClick = { projectQuery = "" }) { + Icon(Icons.Default.Close, contentDescription = stringResource(R.string.clear_search)) + } + } + } else { + null + }, + singleLine = true, + ) + FilterSection( + title = stringResource(R.string.stats2_filter_projects), + emptyText = stringResource( + if (projectQuery.isBlank()) R.string.stats2_filter_empty_projects else R.string.no_results_found, + ), + options = filteredProjects.map { it.id to it.name }, + selected = filters.projectIds, + onToggle = { onFiltersChange(filters.toggleProject(it)) }, + optionTestTag = StatisticsFilterTestTags::projectOption, + ) + Text( stringResource(R.string.stats2_filter_billable), style = MaterialTheme.typography.titleSmall, @@ -221,13 +265,6 @@ private fun StatFilterSheet( } } - FilterSection( - title = stringResource(R.string.stats2_filter_projects), - emptyText = stringResource(R.string.stats2_filter_empty_projects), - options = catalog.projects.map { it.id to it.name }, - selected = filters.projectIds, - onToggle = { onFiltersChange(filters.toggleProject(it)) }, - ) FilterSection( title = stringResource(R.string.stats2_filter_clients), emptyText = stringResource(R.string.stats2_filter_empty_clients), @@ -261,6 +298,7 @@ private fun FilterSection( options: List>, selected: Set, onToggle: (String) -> Unit, + optionTestTag: ((String) -> String)? = null, ) { Column(verticalArrangement = Arrangement.spacedBy(Dimens.Space4)) { Text(title, style = MaterialTheme.typography.titleSmall) @@ -277,6 +315,7 @@ private fun FilterSection( selected = id in selected, onClick = { onToggle(id) }, label = { Text(name, maxLines = 1, overflow = TextOverflow.Ellipsis) }, + modifier = optionTestTag?.let { Modifier.testTag(it(id)) } ?: Modifier, ) } } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt index 9cfb155..0b92420 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingScreen.kt @@ -88,6 +88,7 @@ import androidx.compose.material.icons.filled.AccessTime import androidx.compose.material.icons.filled.Add import androidx.compose.material.icons.filled.ArrowDropDown import androidx.compose.material.icons.filled.DateRange +import androidx.compose.material.icons.filled.FilterList import androidx.compose.material.icons.filled.Remove import androidx.compose.material.icons.filled.Search import androidx.compose.material.icons.filled.Close @@ -208,6 +209,7 @@ import dev.tricked.solidverdant.ui.components.EntryDateFieldButton import dev.tricked.solidverdant.ui.components.EntryDatePickerDialog import dev.tricked.solidverdant.ui.components.EditTimeEntryTestTags import dev.tricked.solidverdant.ui.components.SectionCard +import dev.tricked.solidverdant.ui.components.SearchableSingleSelectDialog import dev.tricked.solidverdant.ui.components.SyncChip import dev.tricked.solidverdant.ui.localization.appLocale import dev.tricked.solidverdant.ui.theme.Dimens @@ -1356,64 +1358,58 @@ internal fun AutoClearEntryFieldsSettings( @Composable @Suppress("LongMethod") private fun HistoryFilters(filter: HistoryFilter, uiState: TrackingUiState, onChange: (HistoryFilter) -> Unit) { - var expanded by androidx.compose.runtime.saveable.rememberSaveable { mutableStateOf(false) } + var optionsExpanded by androidx.compose.runtime.saveable.rememberSaveable { mutableStateOf(false) } var showDateRangePicker by remember { mutableStateOf(false) } - val activeCount = listOfNotNull( - filter.query.takeIf { it.isNotBlank() }, filter.billable, filter.runningOnly.takeIf { it }, + val activeOptionsCount = listOfNotNull( + filter.billable, filter.runningOnly.takeIf { it }, filter.syncStatus, filter.startDate, filter.endDate, filter.clientId, filter.projectId, filter.taskId, filter.tagId, filter.missingProjectOnly.takeIf { it }, filter.missingDescriptionOnly.takeIf { it }, filter.needsCategorization.takeIf { it }, ).size - Column(Modifier.fillMaxWidth(), verticalArrangement = Arrangement.spacedBy(6.dp)) { - if (expanded) { - Row( - modifier = Modifier.fillMaxWidth(), - verticalAlignment = Alignment.CenterVertically, - horizontalArrangement = Arrangement.spacedBy(Dimens.Space8), - ) { - OutlinedTextField( - value = filter.query, - onValueChange = { onChange(filter.copy(query = it)) }, - label = { Text(stringResource(R.string.search_history)) }, - leadingIcon = { Icon(Icons.Default.Search, contentDescription = null) }, - singleLine = true, - modifier = Modifier.weight(1f).testTag(TrackingTestTags.FILTER_SEARCH_FIELD), - ) - IconButton( - onClick = { expanded = false }, - modifier = Modifier.testTag(TrackingTestTags.FILTER_CLOSE_BUTTON), - ) { - Icon(Icons.Default.Close, contentDescription = stringResource(R.string.close)) - } - } - } else { - OutlinedButton( - onClick = { expanded = true }, - modifier = Modifier.fillMaxWidth().testTag(TrackingTestTags.FILTER_OPEN_BUTTON), - ) { - Icon(Icons.Default.Search, contentDescription = null, modifier = Modifier.size(Dimens.IconMedium)) - Spacer(Modifier.width(Dimens.Space8)) - Column(modifier = Modifier.weight(1f), horizontalAlignment = Alignment.Start) { - Text(stringResource(R.string.search_and_filter), maxLines = 1, overflow = TextOverflow.Ellipsis) - when { - filter.query.isNotBlank() -> Text( - filter.query, - style = MaterialTheme.typography.labelSmall, - color = MaterialTheme.colorScheme.onSurfaceVariant, - maxLines = 1, - overflow = TextOverflow.Ellipsis, - ) - activeCount > 0 -> Text( - pluralStringResource(R.plurals.active_filters_count, activeCount, activeCount), - style = MaterialTheme.typography.labelSmall, - color = MaterialTheme.colorScheme.onSurfaceVariant, - ) + Column(Modifier.fillMaxWidth(), verticalArrangement = Arrangement.spacedBy(Dimens.Space8)) { + OutlinedTextField( + value = filter.query, + onValueChange = { onChange(filter.copy(query = it)) }, + label = { Text(stringResource(R.string.search_history)) }, + leadingIcon = { Icon(Icons.Default.Search, contentDescription = null) }, + trailingIcon = if (filter.query.isNotBlank()) { + { + IconButton(onClick = { onChange(filter.copy(query = "")) }) { + Icon(Icons.Default.Close, contentDescription = stringResource(R.string.clear_search)) } } + } else { + null + }, + singleLine = true, + modifier = Modifier.fillMaxWidth().testTag(TrackingTestTags.FILTER_SEARCH_FIELD), + ) + OutlinedButton( + onClick = { optionsExpanded = !optionsExpanded }, + modifier = Modifier + .fillMaxWidth() + .testTag( + if (optionsExpanded) TrackingTestTags.FILTER_CLOSE_BUTTON else TrackingTestTags.FILTER_OPEN_BUTTON, + ), + ) { + Icon(Icons.Default.FilterList, contentDescription = null, modifier = Modifier.size(Dimens.IconMedium)) + Spacer(Modifier.width(Dimens.Space8)) + Text( + stringResource(if (optionsExpanded) R.string.hide_search_options else R.string.search_options), + modifier = Modifier.weight(1f), + maxLines = 1, + overflow = TextOverflow.Ellipsis, + ) + if (activeOptionsCount > 0) { + Text( + pluralStringResource(R.plurals.active_filters_count, activeOptionsCount, activeOptionsCount), + style = MaterialTheme.typography.labelSmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + ) } } AnimatedVisibility( - visible = expanded, + visible = optionsExpanded, enter = fadeIn(tween(FILTER_ENTER_DURATION_MS)) + expandVertically(tween(FILTER_EXPAND_DURATION_MS)), exit = fadeOut(tween(FILTER_EXIT_DURATION_MS)) + shrinkVertically(tween(FILTER_COLLAPSE_DURATION_MS)), ) { @@ -1546,21 +1542,27 @@ private fun FilterDropdown( ) { if (options.isEmpty()) return var expanded by remember { mutableStateOf(false) } - Box { - FilterChip( - selected = selectedId != null, - onClick = { expanded = true }, - label = { Text(options.firstOrNull { it.first == selectedId }?.second ?: label, maxLines = 1) }, - ) - DropdownMenu(expanded = expanded, onDismissRequest = { expanded = false }) { - DropdownMenuItem( - text = { Text(stringResource(R.string.all_items, label)) }, - onClick = { onSelect(null); expanded = false }, + FilterChip( + selected = selectedId != null, + onClick = { expanded = true }, + label = { + Text( + options.firstOrNull { it.first == selectedId }?.second ?: label, + maxLines = 1, + overflow = TextOverflow.Ellipsis, ) - options.forEach { (id, name) -> - DropdownMenuItem(text = { Text(name) }, onClick = { onSelect(id); expanded = false }) - } - } + }, + ) + if (expanded) { + SearchableSingleSelectDialog( + title = label, + searchPlaceholder = stringResource(R.string.search_items, label), + allLabel = stringResource(R.string.all_items, label), + options = options, + selectedId = selectedId, + onSelect = onSelect, + onDismiss = { expanded = false }, + ) } } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt index 72ca3b1..9e864b0 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt @@ -717,6 +717,13 @@ class TrackingViewModel @Inject constructor( } } + /** Deterministic seam for timing tests; production sync updates use the same state transition. */ + internal fun acceptSyncOperationsForTest(operations: List) { + latestSyncOperations = operations + updateSyncStatusVisibility(operations) + _uiState.value = _uiState.value.copy(syncOperations = operations) + } + private data class TrackingData( val entries: List, val conflictedEntryIds: Set, diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index d1d39d1..e24adb0 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -23,11 +23,14 @@ 接続テストに失敗しました。 この変更はサーバーに届いていません。 検索と絞り込み + 検索オプション + 検索オプションを非表示 有効なフィルター: %1$d 長時間タイマーの確認このタイマーは設定した時間制限に達しました。 すべての%1$s + %1$sを検索 記録カレンダー統計 実行中現在 diff --git a/app/src/main/res/values-ja/strings_stats2.xml b/app/src/main/res/values-ja/strings_stats2.xml index c47ac33..d288ba4 100644 --- a/app/src/main/res/values-ja/strings_stats2.xml +++ b/app/src/main/res/values-ja/strings_stats2.xml @@ -37,6 +37,7 @@ すべての統計フィルターをクリア リセット プロジェクト + プロジェクトを検索 クライアント タスク タグ diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 6ec8050..7c498af 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -23,12 +23,15 @@ De verbindingstest is mislukt. Deze wijziging heeft de server niet bereikt. Zoeken en filteren + Zoekopties + Zoekopties verbergen %1$d actief filter %1$d actieve filters Controle lange timerDeze timer heeft de ingestelde duur bereikt. Alle %1$s + Zoek %1$s min RegistrerenKalenderStatistieken Lopendnu diff --git a/app/src/main/res/values-nl/strings_stats2.xml b/app/src/main/res/values-nl/strings_stats2.xml index f5ac16b..e2b514a 100644 --- a/app/src/main/res/values-nl/strings_stats2.xml +++ b/app/src/main/res/values-nl/strings_stats2.xml @@ -37,6 +37,7 @@ Alle statistiekfilters wissen Herstellen Projecten + Projecten zoeken Klanten Taken Labels diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ff09442..f92f2d8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -23,12 +23,15 @@ The connection test failed. This change has not reached the server. Search & filter + Search options + Hide search options %1$d active filter %1$d active filters Long timer checkThis timer reached your configured duration limit. All %1$s + Search %1$s min 00:00:00 Runningnow diff --git a/app/src/main/res/values/strings_stats2.xml b/app/src/main/res/values/strings_stats2.xml index e005451..1d8117e 100644 --- a/app/src/main/res/values/strings_stats2.xml +++ b/app/src/main/res/values/strings_stats2.xml @@ -37,6 +37,7 @@ Clear all statistics filters Reset Projects + Search projects Clients Tasks Tags diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/components/SearchableSingleSelectDialogTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/components/SearchableSingleSelectDialogTest.kt new file mode 100644 index 0000000..c29db5a --- /dev/null +++ b/app/src/test/java/dev/tricked/solidverdant/ui/components/SearchableSingleSelectDialogTest.kt @@ -0,0 +1,54 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.ui.components + +import androidx.compose.material3.MaterialTheme +import androidx.compose.ui.test.junit4.v2.createComposeRule +import androidx.compose.ui.test.onNodeWithTag +import androidx.compose.ui.test.performClick +import androidx.compose.ui.test.performTextInput +import org.junit.Assert.assertEquals +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner +import org.robolectric.annotation.Config +import java.util.concurrent.atomic.AtomicReference + +@RunWith(RobolectricTestRunner::class) +@Config(sdk = [34]) +class SearchableSingleSelectDialogTest { + + @get:Rule + val composeRule = createComposeRule() + + @Test + fun largeCatalogueCanBeSearchedAndSelectedWithoutScrolling() { + val selected = AtomicReference(null) + composeRule.setContent { + MaterialTheme { + SearchableSingleSelectDialog( + title = "Project", + searchPlaceholder = "Search project", + allLabel = "All projects", + options = (1..100).map { index -> "project-$index" to "Project $index" }, + selectedId = null, + onSelect = selected::set, + onDismiss = {}, + searchTestTag = "catalogue_search", + optionTestTag = { "catalogue_option_$it" }, + ) + } + } + + composeRule.onNodeWithTag("catalogue_search").performTextInput("Project 87") + composeRule.onNodeWithTag("catalogue_option_project-1").assertDoesNotExist() + composeRule.onNodeWithTag("catalogue_option_project-87").performClick() + + assertEquals("project-87", selected.get()) + } +} diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterBarInteractionTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterBarInteractionTest.kt new file mode 100644 index 0000000..de498cd --- /dev/null +++ b/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterBarInteractionTest.kt @@ -0,0 +1,56 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.ui.statistics + +import androidx.compose.material3.MaterialTheme +import androidx.compose.ui.test.junit4.v2.createComposeRule +import androidx.compose.ui.test.onNodeWithTag +import androidx.compose.ui.test.performClick +import androidx.compose.ui.test.performTextInput +import dev.tricked.solidverdant.data.model.Project +import org.junit.Assert.assertEquals +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner +import org.robolectric.annotation.Config +import java.util.concurrent.atomic.AtomicReference + +@RunWith(RobolectricTestRunner::class) +@Config(sdk = [34]) +class StatFilterBarInteractionTest { + + @get:Rule + val composeRule = createComposeRule() + + @Test + fun projectSearchIsImmediatelyAvailableAndFiltersOptions() { + val selected = AtomicReference(StatFilters()) + composeRule.setContent { + MaterialTheme { + StatFilterBar( + filters = selected.get(), + catalog = StatCatalog( + projects = listOf( + Project(id = "matching", name = "Precision milling", color = "#336699"), + Project(id = "other", name = "Internal work", color = "#663399"), + ), + ), + onFiltersChange = { selected.set(it) }, + onClearFilters = { selected.set(StatFilters()) }, + ) + } + } + + composeRule.onNodeWithTag(StatisticsFilterTestTags.OPEN).performClick() + composeRule.onNodeWithTag(StatisticsFilterTestTags.PROJECT_SEARCH).performTextInput("precision") + + composeRule.onNodeWithTag(StatisticsFilterTestTags.projectOption("other")).assertDoesNotExist() + composeRule.onNodeWithTag(StatisticsFilterTestTags.projectOption("matching")).performClick() + assertEquals(setOf("matching"), selected.get().projectIds) + } +} diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelForegroundTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelForegroundTest.kt index 03a7f0b..ae610d3 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelForegroundTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelForegroundTest.kt @@ -173,29 +173,15 @@ class TrackingViewModelForegroundTest { @Test fun `routine pending sync stays hidden until it is slow`() = runTest(dispatcher.scheduler) { - db.outboxDao().insert( - OutboxEntity( - opType = OutboxOpType.UPDATE, - organizationId = ORG, - timeEntryId = "pending-entry", - payloadJson = "{}", - createdAtMs = 1L, - ), + val operation = TimeEntryRepository.SyncOperation( + entryId = "pending-entry", + type = OutboxOpType.UPDATE, + status = TimeEntryRepository.EntrySyncStatus.PENDING, + attemptCount = 0, + error = null, ) val vm = viewModel() - vm.loadAllData(ORG, MEMBER) - - // Do not suspend with Flow.first here: runTest may auto-advance virtual time to the next - // delayed task while Room delivers from its executor, which would skip the reveal window - // this test is proving. Pump only work at the current virtual timestamp instead. - val deadlineNanos = System.nanoTime() + 5_000_000_000L - while (vm.uiState.value.syncOperations.isEmpty() && System.nanoTime() < deadlineNanos) { - shadowOf(Looper.getMainLooper()).idle() - dispatcher.scheduler.runCurrent() - Thread.yield() - } - assertTrue("Timed out waiting for pending sync operations", vm.uiState.value.syncOperations.isNotEmpty()) - shadowOf(Looper.getMainLooper()).idle() + vm.acceptSyncOperationsForTest(listOf(operation)) dispatcher.scheduler.runCurrent() assertFalse(vm.uiState.value.syncStatusVisible) @@ -204,28 +190,8 @@ class TrackingViewModelForegroundTest { assertFalse(vm.uiState.value.syncStatusVisible) dispatcher.scheduler.advanceTimeBy(1) - // Flush work scheduled exactly at the reveal boundary; a Room emission can enqueue the - // visibility continuation behind the timer callback on the same virtual timestamp. - shadowOf(Looper.getMainLooper()).idle() - dispatcher.scheduler.advanceUntilIdle() - shadowOf(Looper.getMainLooper()).idle() dispatcher.scheduler.runCurrent() - // If Room delivered the pending operation from its executor after the first virtual-time - // flush, the reveal delay starts at that later scheduler instant. Give that continuation - // one full reveal window to run without making the pre-threshold assertions weaker. - repeat(3) { - if (!vm.uiState.value.syncStatusVisible) { - dispatcher.scheduler.advanceTimeBy(SYNC_STATUS_REVEAL_DELAY_MS) - shadowOf(Looper.getMainLooper()).idle() - dispatcher.scheduler.runCurrent() - } - } - assertTrue( - "Expected delayed sync visibility; operations=${vm.uiState.value.syncOperations.size}, " + - "statuses=${vm.uiState.value.syncOperations.map { it.status }}, " + - "visible=${vm.uiState.value.syncStatusVisible}", - vm.uiState.value.syncStatusVisible, - ) + assertTrue(vm.uiState.value.syncStatusVisible) } @Test From ecb6297e98234e3a779643abdefc2b5044399f75 Mon Sep 17 00:00:00 2001 From: AKolenda Date: Fri, 21 Aug 2026 18:38:53 -0600 Subject: [PATCH 07/11] Allow calendar metadata to fill event cards --- .github/screenshots/readme/calendar-week.png | Bin 54891 -> 60428 bytes .../solidverdant/ui/components/EntryBlock.kt | 7 +++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/screenshots/readme/calendar-week.png b/.github/screenshots/readme/calendar-week.png index ba3969cd935dc2d50f3a9dd651d812ed6e798d97..b504bea3a976aee216ed1c2b76995fc9e8d451ce 100644 GIT binary patch literal 60428 zcmeFZc{tSn-#@ApDH4*9B|;%W$XF{`vQGA_g@{4+eNQO+nqArVeK!VW4_U_8RrVP> zW0*1Kyr({&@8^48_kFJGzR&Mm=UnIdoxg^;=KWfq%j5ZYKA-P!O?5@8i%b_uNJyxZ zmE@n1kdTUzkdPf-AOpU!%HjdO2q00Gf2i$YvN1>g@#>TLo?Y*GEwFwkt@{+$?Xa^P z7e3#jXyLqFP#6!>WOI>$`>cY<@0_)*E)L0o+R`oDTKCWseqQ!HTIQqsaO zTVmq9>5ATLuua4%o(jz5sv?z)q0*xtevf+fF_e@U6qwiOpBq^V$AliR{~ldArba+~ z_JQIsU)QOKCG!5z4-1mt^W6?Q7aOhXQ)-ovKhs)2RLRfP805`RPtY(UI_X0VLMF1L&jyny-=-|LL8glQz&6q&t^FpHO{B9pr=)ln#bGI z_^x2CFQawW9^9>#`l@zYcITPZiNNA+L8iA_#`w?sIqLOqnIHm8_f_rYcQxu3sVzNR zr^t(KA|K^MHu@k%ZE)KJ(dpiLM#P{Hvfz=751|e11bdvyTApv}9E>$vMwsAT-thw~ zmH&`#w<`$Wco+ZcBv#~sz4w$J=oG(c-2#981nZTPSF*3pJ6#$Q*fO zZ~jnG0L{Q=4n91`4n3_~PL_q|ZxS>W8zgROR=oOorrYt|&04duLS<+47Y&%FLpS}{ ztKvWgYCR2ELNjJ%5Na1VqE1_gd*R#UmBS>t`&86smL9q9;P<9pxpCd)xp`;XsPQzIS*+gbx2;tP zbG(T!8BrdyICBD$`o$I|?DL#+w#mODqc`b}r?Z2g3E0dqm0DZmB36GvR-Ad?t zeGh;9ez8e!UO4EziDLS6Q;FV|dd>%QDsZNnUh9ay-mLSO+11h@ZmSn>PmJr={d3FO zVA{u4H>eoJx@Szpco2*w&5O2BV-Df-YSX^eHc%0DOmf*wrLiv#ue)6pF_^a%mz*pS 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 literal 54891 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 jALh2?|CO#MFj Date: Fri, 21 Aug 2026 19:16:18 -0600 Subject: [PATCH 08/11] Stabilize lifecycle and updated picker tests --- .../e2e/flows/ExternalTimerSurfacesE2eTest.kt | 3 ++- .../e2e/flows/SyncDetailsNavigationE2eTest.kt | 2 +- .../e2e/flows/TrackCriticalFlowsE2eTest.kt | 2 +- .../tricked/solidverdant/e2e/robots/TrackRobot.kt | 15 ++++++++++++++- .../ui/tracking/TrackingViewModelMutationTest.kt | 7 ++++--- 5 files changed, 22 insertions(+), 7 deletions(-) diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/ExternalTimerSurfacesE2eTest.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/ExternalTimerSurfacesE2eTest.kt index 6822658..df7da4b 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/ExternalTimerSurfacesE2eTest.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/ExternalTimerSurfacesE2eTest.kt @@ -160,7 +160,8 @@ class ExternalTimerSurfacesE2eTest { grantNotificationPermission() e2e.launchApp() TrackRobot(e2e.composeRule).waitForHistory().assertStopButtonVisible() - val originalStopAction = waitForNotificationAction(R.string.stop_tracking, originalStart) + // Seven-hour timers intentionally render the long-timer warning action set. + val originalStopAction = waitForNotificationAction(R.string.stop_now, originalStart) TimeTrackingNotificationService.quickStart( context = context, diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/SyncDetailsNavigationE2eTest.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/SyncDetailsNavigationE2eTest.kt index 13ce058..3b9c7d6 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/SyncDetailsNavigationE2eTest.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/SyncDetailsNavigationE2eTest.kt @@ -36,10 +36,10 @@ class SyncDetailsNavigationE2eTest { ), ), ) + e2e.seedFailedSync(requireNotNull(fixture.serverId)) e2e.launchApp() val track = TrackRobot(e2e.composeRule).waitForHistory() - e2e.seedFailedSync(requireNotNull(fixture.serverId)) e2e.composeRule.waitUntilAtLeastOneExists(hasTestTag(TestTags.TRACK_SYNC_STATUS_CARD), WAIT_MS) track.openSyncDetails().closeSyncDetails() } diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/TrackCriticalFlowsE2eTest.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/TrackCriticalFlowsE2eTest.kt index 156c9b8..aa04ba7 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/TrackCriticalFlowsE2eTest.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/TrackCriticalFlowsE2eTest.kt @@ -52,7 +52,7 @@ class TrackCriticalFlowsE2eTest { .tapFirstEntryEdit() .assertEditSettingsVisible() .replaceSheetDescription("Edited all settings") - .selectSheetProjectTask(catalog.task.name) + .selectSheetProjectTask(catalog.project.name, catalog.task.name) .selectSheetTag(catalog.tag.id) .toggleSheetBillable() .replaceSheetDuration("90") diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/robots/TrackRobot.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/robots/TrackRobot.kt index 73ba0b5..af4de90 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/robots/TrackRobot.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/robots/TrackRobot.kt @@ -244,7 +244,20 @@ class TrackRobot(composeRule: ComposeTestRule) : Robot(composeRule) { firstSheetNodeWithTag(TestTags.TRACK_SHEET_DESCRIPTION_FIELD).performTextInput(text) } - fun selectSheetProjectTask(taskName: String): TrackRobot = apply { + fun selectSheetProjectTask(projectName: String, taskName: String): TrackRobot = apply { + firstSheetNodeWithTag(TestTags.TRACK_SHEET_PROJECT_TASK_SELECTOR).performScrollTo().performClick() + waitUntilTagExists(TestTags.TRACK_PROJECT_TASK_LIST) + val projectMatcher = hasText(projectName, substring = false) + composeRule.waitUntil(DEFAULT_TIMEOUT_MS) { + runCatching { + firstNodeWithTag(TestTags.TRACK_PROJECT_TASK_LIST).performScrollToNode(projectMatcher) + composeRule.onAllNodes(projectMatcher, useUnmergedTree = true) + .fetchSemanticsNodes() + .isNotEmpty() + }.getOrDefault(false) + } + composeRule.onAllNodes(projectMatcher, useUnmergedTree = true).onFirst().performClick() + waitUntilSheetTagExists(TestTags.TRACK_SHEET_TASK_SELECTOR) firstSheetNodeWithTag(TestTags.TRACK_SHEET_TASK_SELECTOR).performScrollTo().performClick() waitUntilTagExists(TestTags.TRACK_TASK_LIST) val taskMatcher = hasText(taskName, substring = false) diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt index dc73f24..d3fba74 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt @@ -312,10 +312,11 @@ class TrackingViewModelMutationTest { clock = clock, ).also { viewModels += it } - private fun dispose(viewModel: TrackingViewModel) { - viewModel.cancelScopeForTest() - viewModels.remove(viewModel) + private suspend fun dispose(viewModel: TrackingViewModel) { + val scopeJob = viewModel.cancelScopeForTest() dispatcher.scheduler.runCurrent() + scopeJob?.join() + viewModels.remove(viewModel) } private fun activeEntry() = TimeEntry( From 55dfb4b938d27e52e34c085b431149c0b2474731 Mon Sep 17 00:00:00 2001 From: AKolenda Date: Fri, 21 Aug 2026 23:59:54 -0600 Subject: [PATCH 09/11] Require long press to create calendar ranges --- .../flows/CalendarGestureCreationE2eTest.kt | 23 ++++++++++++++++++- .../ui/calendar/CalendarTimeSelectionLayer.kt | 19 ++++----------- app/src/main/res/values-ja/strings.xml | 2 +- app/src/main/res/values-nl/strings.xml | 2 +- app/src/main/res/values/strings.xml | 2 +- 5 files changed, 29 insertions(+), 19 deletions(-) diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/CalendarGestureCreationE2eTest.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/CalendarGestureCreationE2eTest.kt index cfc1b2e..9e55087 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/CalendarGestureCreationE2eTest.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/CalendarGestureCreationE2eTest.kt @@ -66,7 +66,7 @@ class CalendarGestureCreationE2eTest { @BackendPortable @Test - fun draggingAnEmptyCalendarRangeUsesTheSelectedInterval() { + fun longPressingAndDraggingAnEmptyCalendarRangeUsesTheSelectedInterval() { e2e.prepare(E2eFixture.Empty) e2e.launchApp() openCalendar() @@ -77,6 +77,7 @@ class CalendarGestureCreationE2eTest { .performTouchInput { val start = Offset(center.x, 80f) down(start) + advanceEventTime(600L) moveTo(Offset(start.x, start.y + 160f), delayMillis = 250) up() } @@ -97,6 +98,26 @@ class CalendarGestureCreationE2eTest { ) } + @Test + fun draggingAnEmptyCalendarRangeScrollsWithoutOpeningCreate() { + e2e.prepare(E2eFixture.Empty) + e2e.launchApp() + openCalendar() + + e2e.composeRule.onNodeWithTag(selectionTag(), useUnmergedTree = true) + .performScrollTo() + .performTouchInput { + val start = Offset(center.x, center.y + 100f) + down(start) + moveTo(Offset(start.x, start.y - 240f), delayMillis = 150) + up() + } + + e2e.composeRule.onNodeWithTag(TestTags.ENTRY_SAVE, useUnmergedTree = true).assertDoesNotExist() + e2e.composeRule.onNodeWithTag(TestTags.CALENDAR_WEEK_GRID, useUnmergedTree = true) + .assertExists() + } + private fun openCalendar() { e2e.composeRule.waitUntilAtLeastOneExists(hasTestTag("main_nav_calendar"), WAIT_MS) e2e.composeRule.onNodeWithTag("main_nav_calendar", useUnmergedTree = true).performClick() diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/calendar/CalendarTimeSelectionLayer.kt b/app/src/main/java/dev/tricked/solidverdant/ui/calendar/CalendarTimeSelectionLayer.kt index 145d03e..098689b 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/calendar/CalendarTimeSelectionLayer.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/calendar/CalendarTimeSelectionLayer.kt @@ -8,7 +8,7 @@ package dev.tricked.solidverdant.ui.calendar import androidx.compose.foundation.background import androidx.compose.foundation.border -import androidx.compose.foundation.gestures.detectDragGestures +import androidx.compose.foundation.gestures.detectDragGesturesAfterLongPress import androidx.compose.foundation.gestures.detectTapGestures import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxSize @@ -38,7 +38,8 @@ import kotlin.math.max import kotlin.math.min /** - * Transparent input layer for selecting a new entry by dragging in an empty time grid. It is + * Transparent input layer for selecting a new entry by long-pressing and dragging in an empty + * time grid. An ordinary vertical drag remains available to the parent calendar scroller. It is * placed behind tracked entry blocks, so tapping an existing entry still opens its editor. */ @Composable @@ -65,7 +66,7 @@ internal fun CalendarTimeSelectionLayer( .testTag(CalendarTestTags.selection(day)) .semantics { contentDescription = dragHint } .pointerInput(day, zone, gridHeightPx, settings) { - detectDragGestures( + detectDragGesturesAfterLongPress( onDragStart = { offset -> dragStartY = offset.y dragCurrentY = offset.y @@ -112,18 +113,6 @@ internal fun CalendarTimeSelectionLayer( ), ) }, - onLongPress = { offset -> - onSelectionCompleteState( - calendarTimeRangeForDrag( - day = day, - startY = offset.y, - endY = offset.y, - gridHeightPx = gridHeightPx, - zone = zone, - settings = settings, - ), - ) - }, ) }, ) { diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index e24adb0..9f0d16a 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -39,7 +39,7 @@ %1$d件のエントリーを折りたたむ この期間に記録された時間はありません。プロジェクト別推移過去7日間先週今週今月先月カスタム適用合計エントリー1日平均月を表示前の月次の月%2$d年%1$s - タップしてエントリーを作成するか、ドラッグして開始時刻と終了時刻を選択します。 + タップしてエントリーを作成するか、長押ししてからドラッグし、開始時刻と終了時刻を選択します。 その他のカレンダー操作 実行中のタイマー 開始時刻を編集 diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 7c498af..0ab3141 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -41,7 +41,7 @@ %1$d boekingen inklappen Geen geregistreerde tijd in deze periode.Per projectTrendAfgelopen 7 dagenVorige weekDeze weekDeze maandVorige maandAangepastToepassenTotaalBoekingenGem. / dagMaand tonenVorige maandVolgende maand%1$s %2$d - Tik om een boeking te maken of sleep om een start- en eindtijd te selecteren. + Tik om een boeking te maken, of houd vast en sleep om een start- en eindtijd te selecteren. Meer kalenderacties Lopende timer Starttijd bewerken diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index f92f2d8..1a66290 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -41,7 +41,7 @@ Collapse %1$d entries No tracked time in this range.By projectTrendLast 7 daysLast weekThis weekThis monthPrevious monthCustomApplyTotalEntriesAvg / dayShow monthPrevious monthNext month%1$s %2$d - Tap to create an entry, or drag to select a start and end time. + Tap to create an entry, or touch and hold before dragging to select a start and end time. More calendar actions Running timer Edit start time From 86fe0e309fa7beb3fc27907e369fe7fbcc980847 Mon Sep 17 00:00:00 2001 From: AKolenda Date: Sat, 22 Aug 2026 00:52:30 -0600 Subject: [PATCH 10/11] Fix first-start stop race and nest statistics filters --- .../e2e/flows/TrackingLifecycleE2eTest.kt | 13 ++ .../ui/statistics/StatFilterBar.kt | 176 +++++++++++------- .../ui/tracking/TrackingViewModel.kt | 9 +- .../statistics/StatFilterSectionOrderTest.kt | 33 ++++ .../tracking/TrackingViewModelMutationTest.kt | 25 +++ 5 files changed, 190 insertions(+), 66 deletions(-) create mode 100644 app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterSectionOrderTest.kt diff --git a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/TrackingLifecycleE2eTest.kt b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/TrackingLifecycleE2eTest.kt index 25c3b01..395c7ff 100644 --- a/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/TrackingLifecycleE2eTest.kt +++ b/app/src/androidTest/java/dev/tricked/solidverdant/e2e/flows/TrackingLifecycleE2eTest.kt @@ -72,6 +72,19 @@ class TrackingLifecycleE2eTest { robot.assertStartButtonVisible() } + @Test + fun immediateStopAfterFirstStartCreatesLocalHistory() { + e2e.requireMockBackend().presetLoggedInWorld(seededEntry = null) + e2e.launchApp() + val robot = TrackRobot(e2e.composeRule).waitForHistory() + + // Do not wait for START sync or a separate Room collector emission. This reproduces the + // first-login window where Stop used to see a null currentTimeEntry and silently return. + robot.tapStart().tapStop().assertStartButtonVisible() + + e2e.composeRule.waitUntil(WAIT_MS) { robot.entryRowCount() > 0 } + } + companion object { private const val WAIT_MS = 15_000L } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt b/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt index 769da27..12860a7 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt @@ -59,6 +59,26 @@ internal object StatisticsFilterTestTags { fun projectOption(id: String) = "stats_project_filter_$id" } +internal enum class StatFilterSection { BILLABLE, TASKS, TAGS, CLIENTS, PROJECTS } + +internal val statFilterSectionOrder = listOf( + StatFilterSection.BILLABLE, + StatFilterSection.TASKS, + StatFilterSection.TAGS, + StatFilterSection.CLIENTS, + StatFilterSection.PROJECTS, +) + +internal fun filterProjectOptions( + options: List>, + query: String, +): List> { + val normalized = query.trim() + return if (normalized.isEmpty()) options else options.filter { (_, name) -> + name.contains(normalized, ignoreCase = true) + } +} + /** * Persistent filter bar: a "Filters" button that opens the editing sheet, a legible summary of the * active scope, and a one-tap clear. Active constraints are echoed as removable chips so the current @@ -190,6 +210,7 @@ private fun StatFilterSheet( onReset: () -> Unit, onDismiss: () -> Unit, ) { + var selectedSection by rememberSaveable { mutableStateOf(StatFilterSection.BILLABLE) } var projectQuery by rememberSaveable { mutableStateOf("") } val filteredProjects = remember(catalog.projects, projectQuery) { val query = projectQuery.trim() @@ -218,74 +239,90 @@ private fun StatFilterSheet( } } - OutlinedTextField( - value = projectQuery, - onValueChange = { projectQuery = it }, - modifier = Modifier.fillMaxWidth().testTag(StatisticsFilterTestTags.PROJECT_SEARCH), - label = { Text(stringResource(R.string.stats2_search_projects)) }, - leadingIcon = { Icon(Icons.Default.Search, contentDescription = null) }, - trailingIcon = if (projectQuery.isNotEmpty()) { - { - IconButton(onClick = { projectQuery = "" }) { - Icon(Icons.Default.Close, contentDescription = stringResource(R.string.clear_search)) + FlowRow( + horizontalArrangement = Arrangement.spacedBy(Dimens.Space8), + verticalArrangement = Arrangement.spacedBy(Dimens.Space4), + ) { + statFilterSectionOrder.forEach { section -> + FilterChip( + selected = selectedSection == section, + onClick = { selectedSection = section }, + label = { Text(statFilterSectionLabel(section)) }, + ) + } + } + + when (selectedSection) { + StatFilterSection.BILLABLE -> { + val billableOptions = listOf( + BillableFilter.All, + BillableFilter.Billable, + BillableFilter.NonBillable, + ) + SingleChoiceSegmentedButtonRow(Modifier.fillMaxWidth()) { + billableOptions.forEachIndexed { index, option -> + SegmentedButton( + selected = filters.billable == option, + onClick = { onFiltersChange(filters.copy(billable = option)) }, + shape = SegmentedButtonDefaults.itemShape(index, billableOptions.size), + ) { Text(billableLabel(option)) } } } - } else { - null - }, - singleLine = true, - ) - FilterSection( - title = stringResource(R.string.stats2_filter_projects), - emptyText = stringResource( - if (projectQuery.isBlank()) R.string.stats2_filter_empty_projects else R.string.no_results_found, - ), - options = filteredProjects.map { it.id to it.name }, - selected = filters.projectIds, - onToggle = { onFiltersChange(filters.toggleProject(it)) }, - optionTestTag = StatisticsFilterTestTags::projectOption, - ) + } - Text( - stringResource(R.string.stats2_filter_billable), - style = MaterialTheme.typography.titleSmall, - ) - val billableOptions = listOf( - BillableFilter.All, - BillableFilter.Billable, - BillableFilter.NonBillable, - ) - SingleChoiceSegmentedButtonRow(Modifier.fillMaxWidth()) { - billableOptions.forEachIndexed { index, option -> - SegmentedButton( - selected = filters.billable == option, - onClick = { onFiltersChange(filters.copy(billable = option)) }, - shape = SegmentedButtonDefaults.itemShape(index, billableOptions.size), - ) { Text(billableLabel(option)) } + StatFilterSection.TASKS -> FilterSection( + emptyText = stringResource(R.string.stats2_filter_empty_tasks), + options = catalog.tasks.map { it.id to it.name }, + selected = filters.taskIds, + onToggle = { onFiltersChange(filters.toggleTask(it)) }, + ) + + StatFilterSection.TAGS -> FilterSection( + emptyText = stringResource(R.string.stats2_filter_empty_tags), + options = catalog.tags.map { it.id to it.name }, + selected = filters.tagIds, + onToggle = { onFiltersChange(filters.toggleTag(it)) }, + ) + + StatFilterSection.CLIENTS -> FilterSection( + emptyText = stringResource(R.string.stats2_filter_empty_clients), + options = catalog.clients.map { it.id to it.name }, + selected = filters.clientIds, + onToggle = { onFiltersChange(filters.toggleClient(it)) }, + ) + + StatFilterSection.PROJECTS -> { + OutlinedTextField( + value = projectQuery, + onValueChange = { projectQuery = it }, + modifier = Modifier.fillMaxWidth().testTag(StatisticsFilterTestTags.PROJECT_SEARCH), + label = { Text(stringResource(R.string.stats2_search_projects)) }, + leadingIcon = { Icon(Icons.Default.Search, contentDescription = null) }, + trailingIcon = if (projectQuery.isNotEmpty()) { + { + IconButton(onClick = { projectQuery = "" }) { + Icon(Icons.Default.Close, contentDescription = stringResource(R.string.clear_search)) + } + } + } else { + null + }, + singleLine = true, + ) + val emptyProjectsText = if (projectQuery.isBlank()) { + R.string.stats2_filter_empty_projects + } else { + R.string.no_results_found + } + FilterSection( + emptyText = stringResource(emptyProjectsText), + options = filteredProjects.map { it.id to it.name }, + selected = filters.projectIds, + onToggle = { onFiltersChange(filters.toggleProject(it)) }, + optionTestTag = StatisticsFilterTestTags::projectOption, + ) } } - - FilterSection( - title = stringResource(R.string.stats2_filter_clients), - emptyText = stringResource(R.string.stats2_filter_empty_clients), - options = catalog.clients.map { it.id to it.name }, - selected = filters.clientIds, - onToggle = { onFiltersChange(filters.toggleClient(it)) }, - ) - FilterSection( - title = stringResource(R.string.stats2_filter_tasks), - emptyText = stringResource(R.string.stats2_filter_empty_tasks), - options = catalog.tasks.map { it.id to it.name }, - selected = filters.taskIds, - onToggle = { onFiltersChange(filters.toggleTask(it)) }, - ) - FilterSection( - title = stringResource(R.string.stats2_filter_tags), - emptyText = stringResource(R.string.stats2_filter_empty_tags), - options = catalog.tags.map { it.id to it.name }, - selected = filters.tagIds, - onToggle = { onFiltersChange(filters.toggleTag(it)) }, - ) } } } @@ -293,7 +330,6 @@ private fun StatFilterSheet( @OptIn(ExperimentalLayoutApi::class, ExperimentalMaterial3Api::class) @Composable private fun FilterSection( - title: String, emptyText: String, options: List>, selected: Set, @@ -301,7 +337,6 @@ private fun FilterSection( optionTestTag: ((String) -> String)? = null, ) { Column(verticalArrangement = Arrangement.spacedBy(Dimens.Space4)) { - Text(title, style = MaterialTheme.typography.titleSmall) if (options.isEmpty()) { Text( emptyText, @@ -323,6 +358,17 @@ private fun FilterSection( } } +@Composable +private fun statFilterSectionLabel(section: StatFilterSection): String = stringResource( + when (section) { + StatFilterSection.BILLABLE -> R.string.stats2_filter_billable + StatFilterSection.TASKS -> R.string.stats2_filter_tasks + StatFilterSection.TAGS -> R.string.stats2_filter_tags + StatFilterSection.CLIENTS -> R.string.stats2_filter_clients + StatFilterSection.PROJECTS -> R.string.stats2_filter_projects + }, +) + @Composable private fun billableLabel(filter: BillableFilter): String = when (filter) { BillableFilter.All -> stringResource(R.string.stats2_billable_all) diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt index 96934fc..5b46a3f 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt @@ -1416,7 +1416,14 @@ class TrackingViewModel @Inject constructor( ) TimeTrackingWidget.requestUpdate(context) - _uiState.value = _uiState.value.copy(isLoading = false, isTracking = true) + // startEntry returns the row that was committed to Room. Project that durable + // value immediately so an eager Stop tap cannot land before the combined Room + // collector has delivered currentTimeEntry on a fresh login. + _uiState.value = _uiState.value.copy( + isLoading = false, + isTracking = true, + currentTimeEntry = timeEntry, + ) timerMutationInProgress = false Timber.d("Time entry started successfully (optimistic)") } catch (e: Exception) { diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterSectionOrderTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterSectionOrderTest.kt new file mode 100644 index 0000000..6a13a9d --- /dev/null +++ b/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterSectionOrderTest.kt @@ -0,0 +1,33 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package dev.tricked.solidverdant.ui.statistics + +import org.junit.Assert.assertEquals +import org.junit.Test + +class StatFilterSectionOrderTest { + @Test + fun high_value_filters_precede_long_catalogue_lists() { + assertEquals( + listOf( + StatFilterSection.BILLABLE, + StatFilterSection.TASKS, + StatFilterSection.TAGS, + StatFilterSection.CLIENTS, + StatFilterSection.PROJECTS, + ), + statFilterSectionOrder, + ) + } + + @Test + fun project_search_is_case_insensitive_and_keeps_only_matches() { + val projects = listOf("1" to "Turning", "2" to "Milling") + + assertEquals(listOf("1" to "Turning"), filterProjectOptions(projects, " turn ")) + } +} diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt index d3fba74..30dbf7e 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt @@ -30,6 +30,7 @@ import kotlinx.coroutines.test.setMain import org.junit.After import org.junit.Assert.assertEquals import org.junit.Assert.assertFalse +import org.junit.Assert.assertNull import org.junit.Assert.assertTrue import org.junit.Before import org.junit.Test @@ -220,6 +221,30 @@ class TrackingViewModelMutationTest { dispose(viewModel) } + @Test + fun successful_start_can_be_stopped_before_room_collectors_emit() = runTest(dispatcher.scheduler) { + val entry = TimeEntry( + id = "local-start", + userId = "user", + organizationId = "org", + start = "2026-08-10T08:00:00Z", + ) + val repository = mockk(relaxed = true) + coEvery { repository.startEntry(any(), any(), any(), any(), any(), any(), any()) } returns entry + val viewModel = viewModel(repository) + + viewModel.startTimeEntry("org", "member", "user") + dispatcher.scheduler.runCurrent() + assertEquals(entry, viewModel.uiState.value.currentTimeEntry) + + viewModel.stopTimeEntry() + dispatcher.scheduler.runCurrent() + + coVerify(exactly = 1) { repository.stopEntry(entry, "user") } + assertFalse(viewModel.uiState.value.isTracking) + assertNull(viewModel.uiState.value.currentTimeEntry) + } + @Test fun repeated_stop_is_ignored_while_the_first_mutation_is_in_flight() = runTest(dispatcher.scheduler) { val release = CompletableDeferred() From 91d85cd181dbbbfcac3722f4a749d52ccce45c46 Mon Sep 17 00:00:00 2001 From: AKolenda Date: Sat, 22 Aug 2026 01:26:58 -0600 Subject: [PATCH 11/11] Prepare version 0.2.3 --- .../solidverdant/ui/statistics/StatFilterBar.kt | 15 +++++++++------ .../solidverdant/ui/tracking/TrackingViewModel.kt | 12 +++++++----- .../ui/statistics/StatFilterBarInteractionTest.kt | 3 ++- .../ui/tracking/TrackingViewModelMutationTest.kt | 13 ++++--------- gradle.properties | 2 +- 5 files changed, 23 insertions(+), 22 deletions(-) diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt b/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt index 12860a7..22c40b6 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/statistics/StatFilterBar.kt @@ -57,6 +57,7 @@ internal object StatisticsFilterTestTags { const val OPEN = "stats_filter_open" const val PROJECT_SEARCH = "stats_project_filter_search" fun projectOption(id: String) = "stats_project_filter_$id" + fun section(section: StatFilterSection) = "stats_filter_section_${section.name.lowercase()}" } internal enum class StatFilterSection { BILLABLE, TASKS, TAGS, CLIENTS, PROJECTS } @@ -69,13 +70,14 @@ internal val statFilterSectionOrder = listOf( StatFilterSection.PROJECTS, ) -internal fun filterProjectOptions( - options: List>, - query: String, -): List> { +internal fun filterProjectOptions(options: List>, query: String): List> { val normalized = query.trim() - return if (normalized.isEmpty()) options else options.filter { (_, name) -> - name.contains(normalized, ignoreCase = true) + return if (normalized.isEmpty()) { + options + } else { + options.filter { (_, name) -> + name.contains(normalized, ignoreCase = true) + } } } @@ -248,6 +250,7 @@ private fun StatFilterSheet( selected = selectedSection == section, onClick = { selectedSection = section }, label = { Text(statFilterSectionLabel(section)) }, + modifier = Modifier.testTag(StatisticsFilterTestTags.section(section)), ) } } diff --git a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt index 5b46a3f..a677466 100644 --- a/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt +++ b/app/src/main/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModel.kt @@ -1390,6 +1390,13 @@ class TrackingViewModel @Inject constructor( description = _uiState.value.editingDescription, tagIds = _uiState.value.editingTags, ) + // startEntry returns the row that was committed to Room. Project that durable + // value before notification/widget side effects so a fresh-login Stop action + // never depends on the slower combined Room collector winning the race. + _uiState.value = _uiState.value.copy( + isTracking = true, + currentTimeEntry = timeEntry, + ) syncTrigger.requestSync() // Active timers always have a foreground notification. @@ -1416,13 +1423,8 @@ class TrackingViewModel @Inject constructor( ) TimeTrackingWidget.requestUpdate(context) - // startEntry returns the row that was committed to Room. Project that durable - // value immediately so an eager Stop tap cannot land before the combined Room - // collector has delivered currentTimeEntry on a fresh login. _uiState.value = _uiState.value.copy( isLoading = false, - isTracking = true, - currentTimeEntry = timeEntry, ) timerMutationInProgress = false Timber.d("Time entry started successfully (optimistic)") diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterBarInteractionTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterBarInteractionTest.kt index de498cd..153ac4b 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterBarInteractionTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/statistics/StatFilterBarInteractionTest.kt @@ -28,7 +28,7 @@ class StatFilterBarInteractionTest { val composeRule = createComposeRule() @Test - fun projectSearchIsImmediatelyAvailableAndFiltersOptions() { + fun projectHeaderRevealsSearchAndFiltersOptions() { val selected = AtomicReference(StatFilters()) composeRule.setContent { MaterialTheme { @@ -47,6 +47,7 @@ class StatFilterBarInteractionTest { } composeRule.onNodeWithTag(StatisticsFilterTestTags.OPEN).performClick() + composeRule.onNodeWithTag(StatisticsFilterTestTags.section(StatFilterSection.PROJECTS)).performClick() composeRule.onNodeWithTag(StatisticsFilterTestTags.PROJECT_SEARCH).performTextInput("precision") composeRule.onNodeWithTag(StatisticsFilterTestTags.projectOption("other")).assertDoesNotExist() diff --git a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt index 30dbf7e..10123f9 100644 --- a/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt +++ b/app/src/test/java/dev/tricked/solidverdant/ui/tracking/TrackingViewModelMutationTest.kt @@ -30,7 +30,6 @@ import kotlinx.coroutines.test.setMain import org.junit.After import org.junit.Assert.assertEquals import org.junit.Assert.assertFalse -import org.junit.Assert.assertNull import org.junit.Assert.assertTrue import org.junit.Before import org.junit.Test @@ -222,7 +221,7 @@ class TrackingViewModelMutationTest { } @Test - fun successful_start_can_be_stopped_before_room_collectors_emit() = runTest(dispatcher.scheduler) { + fun successful_start_projects_committed_entry_before_room_collectors_emit() = runTest(dispatcher.scheduler) { val entry = TimeEntry( id = "local-start", userId = "user", @@ -235,14 +234,10 @@ class TrackingViewModelMutationTest { viewModel.startTimeEntry("org", "member", "user") dispatcher.scheduler.runCurrent() - assertEquals(entry, viewModel.uiState.value.currentTimeEntry) - - viewModel.stopTimeEntry() - dispatcher.scheduler.runCurrent() - coVerify(exactly = 1) { repository.stopEntry(entry, "user") } - assertFalse(viewModel.uiState.value.isTracking) - assertNull(viewModel.uiState.value.currentTimeEntry) + assertEquals(entry, viewModel.uiState.value.currentTimeEntry) + assertTrue(viewModel.uiState.value.isTracking) + dispose(viewModel) } @Test diff --git a/gradle.properties b/gradle.properties index 0fafd12..81db8c4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -23,4 +23,4 @@ org.gradle.unsafe.configuration-cache=true # App version — change only this. versionCode is derived automatically. # Format: major.minor.patch (e.g. 1.2.3 → versionCode 10203) -app.versionName=0.2.2 +app.versionName=0.2.3