fix(#44): pin expense filter chips directly under tabs
Hoist the date-range filter chip group and divider out of the LazyColumn and into a Column wrapper, so the chips sit directly under the Expenses/Recurring tabs and the list fills the rest of the page. Previously the chips were the first item of the LazyColumn, which left a large empty area between the tabs and the chips. Also add Modifier.fillMaxSize() to the Recurring tab's LazyColumn so it fills the pager page (no chips to hoist, but the layout is now consistent with the Expenses tab).
This commit is contained in:
@@ -270,29 +270,28 @@ private fun ExpensesTabContent(
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
LazyColumn(
|
Column(modifier = Modifier.fillMaxSize()) {
|
||||||
contentPadding = contentPadding,
|
SingleSelectFilterChipGroup(
|
||||||
) {
|
options = DateRangeFilter.entries.map { it to stringResource(it.labelRes()) },
|
||||||
item {
|
selectedOption = dateRangeFilter to stringResource(dateRangeFilter.labelRes()),
|
||||||
SingleSelectFilterChipGroup(
|
onSelectionChanged = { (filter, _) -> screenModel.setDateRangeFilter(filter) },
|
||||||
options = DateRangeFilter.entries.map { it to stringResource(it.labelRes()) },
|
modifier = Modifier
|
||||||
selectedOption = dateRangeFilter to stringResource(dateRangeFilter.labelRes()),
|
.fillMaxWidth()
|
||||||
onSelectionChanged = { (filter, _) -> screenModel.setDateRangeFilter(filter) },
|
.padding(horizontal = 16.dp, vertical = 4.dp),
|
||||||
modifier = Modifier
|
)
|
||||||
.fillMaxWidth()
|
HorizontalDivider(modifier = Modifier.padding(vertical = 8.dp))
|
||||||
.padding(horizontal = 16.dp, vertical = 4.dp),
|
LazyColumn(
|
||||||
)
|
modifier = Modifier.fillMaxSize(),
|
||||||
}
|
contentPadding = contentPadding,
|
||||||
item {
|
) {
|
||||||
HorizontalDivider(modifier = Modifier.padding(vertical = 8.dp))
|
items(items = expenses, key = { it.expense.id }) { item ->
|
||||||
}
|
ExpenseRow(
|
||||||
items(items = expenses, key = { it.expense.id }) { item ->
|
item = item,
|
||||||
ExpenseRow(
|
onClick = { onExpenseClick(item.expense.id) },
|
||||||
item = item,
|
onLongClick = { onExpenseLongClick(item.expense.id) },
|
||||||
onClick = { onExpenseClick(item.expense.id) },
|
)
|
||||||
onLongClick = { onExpenseLongClick(item.expense.id) },
|
HorizontalDivider()
|
||||||
)
|
}
|
||||||
HorizontalDivider()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -318,6 +317,7 @@ private fun RecurringTabContent(
|
|||||||
}
|
}
|
||||||
|
|
||||||
LazyColumn(
|
LazyColumn(
|
||||||
|
modifier = Modifier.fillMaxSize(),
|
||||||
contentPadding = contentPadding,
|
contentPadding = contentPadding,
|
||||||
) {
|
) {
|
||||||
items(items = recurring, key = { it.recurring.id }) { item ->
|
items(items = recurring, key = { it.recurring.id }) { item ->
|
||||||
|
|||||||
Reference in New Issue
Block a user