Add extended icons

Some layout improvements
Update README
This commit is contained in:
Geoffroy Bonneville
2025-10-01 21:35:25 -04:00
parent 906ad0854d
commit 8e5ac4fedc
8 changed files with 57 additions and 29 deletions

View File

@@ -145,7 +145,7 @@ fun AppContent(
}
is AppDestination.RecycleBin -> {
TextButton(onClick = { viewModel.emptyRecycleBin() }) {
Text(text = "Empty Recycle Bin", color = MaterialTheme.colorScheme.onPrimary)
Text(text = "Empty Recycle Bin", color = MaterialTheme.colorScheme.onPrimaryContainer)
}
}
else -> null

View File

@@ -20,6 +20,7 @@ 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.Delete
import androidx.compose.material.icons.filled.DragHandle
import androidx.compose.material.icons.filled.Edit
import androidx.compose.material3.Button
import androidx.compose.material3.Card
@@ -70,7 +71,7 @@ fun ManageListsScreen(
)
LazyColumn(
modifier = modifier.fillMaxWidth(),
modifier = modifier.fillMaxWidth().padding(start = 10.dp, end = 10.dp),
verticalArrangement = Arrangement.spacedBy(8.dp),
contentPadding = PaddingValues(vertical = 8.dp),
state = lazyListState
@@ -133,6 +134,7 @@ fun ManageListsScreen(
horizontalArrangement = Arrangement.SpaceBetween,
verticalAlignment = Alignment.CenterVertically
) {
Icon(Icons.Default.DragHandle, contentDescription = "Edit")
AnimatedContent(
targetState = isInEditMode,
modifier = Modifier.weight(1f),

View File

@@ -7,10 +7,10 @@ import androidx.compose.foundation.layout.fillMaxHeight
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.List
import androidx.compose.material.icons.filled.DateRange
import androidx.compose.material.icons.filled.Delete
import androidx.compose.material.icons.filled.Edit
import androidx.compose.material.icons.filled.EditNote
import androidx.compose.material.icons.filled.LineWeight
import androidx.compose.material.icons.filled.Today
import androidx.compose.material3.Badge
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
@@ -56,7 +56,7 @@ fun MenuScreen(
Text(viewModel.dueTodayTasksCount.toString())
}
},
icon = { Icon(Icons.Default.DateRange, contentDescription = "Due Today") },
icon = { Icon(Icons.Default.Today, contentDescription = "Due Today") },
selected = currentDestination is AppDestination.DueTodayList,
onClick = { onNavigate(AppDestination.DueTodayList.route) },
modifier = Modifier.padding(NavigationDrawerItemDefaults.ItemPadding)
@@ -71,7 +71,7 @@ fun MenuScreen(
overflow = TextOverflow.Ellipsis
)
},
icon = { Icon(Icons.AutoMirrored.Default.List, contentDescription = list.name) },
icon = { Icon(Icons.Default.LineWeight, contentDescription = list.name) },
selected = currentDestination is AppDestination.TaskList &&
currentDestination.taskListId == list.id,
onClick = { onNavigate("taskList/${list.id}") },
@@ -96,7 +96,7 @@ fun MenuScreen(
)
NavigationDrawerItem(
label = { Text("Edit Lists") },
icon = { Icon(Icons.Default.Edit, contentDescription = "Edit Lists") },
icon = { Icon(Icons.Default.EditNote, contentDescription = "Edit Lists") },
selected = currentDestination is AppDestination.ManageLists,
onClick = { onNavigate(AppDestination.ManageLists.route) },
modifier = Modifier.padding(NavigationDrawerItemDefaults.ItemPadding)

View File

@@ -12,11 +12,11 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.AddCircle
import androidx.compose.material.icons.filled.CheckCircle
import androidx.compose.material.icons.filled.Clear
import androidx.compose.material.icons.filled.Delete
import androidx.compose.material.icons.filled.PlayArrow
import androidx.compose.material.icons.filled.DeleteForever
import androidx.compose.material.icons.filled.DeleteOutline
import androidx.compose.material.icons.filled.RestoreFromTrash
import androidx.compose.material.icons.filled.Unpublished
import androidx.compose.material3.Badge
import androidx.compose.material3.Card
import androidx.compose.material3.CardDefaults
@@ -49,6 +49,7 @@ fun TaskItemScreen(
onSwipeLeft: () -> Unit,
onSwipeRight: () -> Unit
) {
// TODO: change this
val dismissState = rememberSwipeToDismissBoxState(
confirmValueChange = {
when (it) {
@@ -183,7 +184,7 @@ fun DismissBackground(dismissState: SwipeToDismissBoxState, isDone: Boolean, isD
) {
Column (horizontalAlignment = Alignment.CenterHorizontally) {
Icon(
if (isDeleted) Icons.Default.Clear else Icons.Default.Delete,
if (isDeleted) Icons.Default.DeleteForever else Icons.Default.DeleteOutline,
tint = Color.LightGray,
contentDescription = "Delete"
)
@@ -196,15 +197,15 @@ fun DismissBackground(dismissState: SwipeToDismissBoxState, isDone: Boolean, isD
Spacer(modifier = Modifier)
Column (horizontalAlignment = Alignment.CenterHorizontally) {
Icon(
if (isDeleted) Icons.Default.AddCircle else
if (isDone) Icons.Default.PlayArrow else Icons.Default.CheckCircle,
if (isDeleted) Icons.Default.RestoreFromTrash else
if (isDone) Icons.Default.Unpublished else Icons.Default.CheckCircle,
tint = Color.LightGray,
contentDescription = "Archive"
)
Text(
color = MaterialTheme.colorScheme.onPrimary,
fontSize = 10.sp,
text = if (isDeleted) "Restore" else if (isDone) "Active" else "Done"
text = if (isDeleted) "Restore" else if (isDone) "Undone" else "Done"
)
}
}

View File

@@ -8,8 +8,8 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.CalendarMonth
import androidx.compose.material.icons.filled.Clear
import androidx.compose.material.icons.filled.DateRange
import androidx.compose.material3.Button
import androidx.compose.material3.ButtonDefaults
import androidx.compose.material3.DatePicker
@@ -127,7 +127,7 @@ fun TaskBottomSheet(
IconButton(
onClick = { showDatePicker = true },
enabled = !viewModel.isDone) {
Icon(Icons.Default.DateRange, contentDescription = "Pick due date")
Icon(Icons.Default.CalendarMonth, contentDescription = "Pick due date")
}
}
},