Always expand tabs
This commit is contained in:
parent
43b7b42495
commit
e75c7f770d
2 changed files with 30 additions and 39 deletions
|
@ -1,7 +1,6 @@
|
||||||
package com.henryhiles.qweather.presentation.components.weather
|
package com.henryhiles.qweather.presentation.components.weather
|
||||||
|
|
||||||
import androidx.compose.foundation.Image
|
import androidx.compose.foundation.Image
|
||||||
import androidx.compose.foundation.clickable
|
|
||||||
import androidx.compose.foundation.layout.*
|
import androidx.compose.foundation.layout.*
|
||||||
import androidx.compose.material.icons.Icons
|
import androidx.compose.material.icons.Icons
|
||||||
import androidx.compose.material.icons.outlined.Water
|
import androidx.compose.material.icons.outlined.Water
|
||||||
|
@ -22,7 +21,7 @@ import com.henryhiles.qweather.domain.weather.DailyWeatherData
|
||||||
import java.time.format.DateTimeFormatter
|
import java.time.format.DateTimeFormatter
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun WeatherDay(dailyWeatherData: DailyWeatherData, expanded: Boolean, onExpand: () -> Unit) {
|
fun WeatherDay(dailyWeatherData: DailyWeatherData) {
|
||||||
val formattedDate by remember {
|
val formattedDate by remember {
|
||||||
derivedStateOf {
|
derivedStateOf {
|
||||||
dailyWeatherData.date.format(
|
dailyWeatherData.date.format(
|
||||||
|
@ -37,7 +36,6 @@ fun WeatherDay(dailyWeatherData: DailyWeatherData, expanded: Boolean, onExpand:
|
||||||
horizontal = 16.dp,
|
horizontal = 16.dp,
|
||||||
vertical = 8.dp
|
vertical = 8.dp
|
||||||
)
|
)
|
||||||
.clickable(onClick = onExpand)
|
|
||||||
) {
|
) {
|
||||||
Row(
|
Row(
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
|
@ -65,7 +63,6 @@ fun WeatherDay(dailyWeatherData: DailyWeatherData, expanded: Boolean, onExpand:
|
||||||
style = MaterialTheme.typography.titleLarge,
|
style = MaterialTheme.typography.titleLarge,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
if (expanded) {
|
|
||||||
Row(
|
Row(
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.fillMaxWidth()
|
.fillMaxWidth()
|
||||||
|
@ -95,4 +92,3 @@ fun WeatherDay(dailyWeatherData: DailyWeatherData, expanded: Boolean, onExpand:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
|
@ -3,7 +3,7 @@ package com.henryhiles.qweather.presentation.tabs
|
||||||
import androidx.compose.foundation.layout.Box
|
import androidx.compose.foundation.layout.Box
|
||||||
import androidx.compose.foundation.layout.fillMaxSize
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
import androidx.compose.foundation.lazy.LazyColumn
|
import androidx.compose.foundation.lazy.LazyColumn
|
||||||
import androidx.compose.foundation.lazy.itemsIndexed
|
import androidx.compose.foundation.lazy.items
|
||||||
import androidx.compose.foundation.text.selection.SelectionContainer
|
import androidx.compose.foundation.text.selection.SelectionContainer
|
||||||
import androidx.compose.material.icons.Icons
|
import androidx.compose.material.icons.Icons
|
||||||
import androidx.compose.material.icons.filled.DateRange
|
import androidx.compose.material.icons.filled.DateRange
|
||||||
|
@ -75,13 +75,8 @@ object WeekTab : NavigationTab {
|
||||||
modifier = Modifier.fillMaxSize()
|
modifier = Modifier.fillMaxSize()
|
||||||
) {
|
) {
|
||||||
weatherViewModel.state.dailyWeatherData?.let { data ->
|
weatherViewModel.state.dailyWeatherData?.let { data ->
|
||||||
itemsIndexed(data) { index, dailyData ->
|
items(data) {
|
||||||
val expanded = weatherViewModel.state.expanded == index
|
WeatherDay(dailyWeatherData = it)
|
||||||
WeatherDay(
|
|
||||||
dailyWeatherData = dailyData,
|
|
||||||
expanded = expanded,
|
|
||||||
onExpand = { weatherViewModel.setExpanded(if (expanded) null else index) }
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue