Skip to content

Commit 0a4e44d

Browse files
committed
Cleanup
1 parent 8ea4477 commit 0a4e44d

3 files changed

Lines changed: 25 additions & 41 deletions

File tree

common/src/main/java/com/sample/tmdb/common/ui/component/TMDbContent.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import androidx.compose.foundation.layout.Column
99
import androidx.compose.foundation.layout.Row
1010
import androidx.compose.foundation.layout.fillMaxSize
1111
import androidx.compose.foundation.layout.fillMaxWidth
12+
import androidx.compose.foundation.layout.height
1213
import androidx.compose.foundation.layout.offset
1314
import androidx.compose.foundation.layout.padding
1415
import androidx.compose.foundation.layout.size
@@ -53,7 +54,11 @@ import com.sample.tmdb.common.ui.theme.rateColors
5354
@OptIn(ExperimentalMaterialApi::class)
5455
@Composable
5556
fun TMDbContent(tmdbItem: TMDbItem, onClick: (TMDbItem) -> Unit, modifier: Modifier = Modifier) {
56-
Box(modifier = modifier) {
57+
Box(
58+
modifier = modifier
59+
.height(320.dp)
60+
.padding(vertical = TMDb_8_dp),
61+
) {
5762
TMDbItemRate(
5863
tmdbItem.voteAverage,
5964
modifier =

features/feature-bookmark/src/main/java/com/sample/tmdb/bookmark/BookmarkScreen.kt

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import androidx.compose.foundation.layout.Box
88
import androidx.compose.foundation.layout.Column
99
import androidx.compose.foundation.layout.PaddingValues
1010
import androidx.compose.foundation.layout.fillMaxSize
11-
import androidx.compose.foundation.layout.height
1211
import androidx.compose.foundation.layout.padding
1312
import androidx.compose.foundation.layout.statusBarsPadding
1413
import androidx.compose.foundation.lazy.grid.GridCells
@@ -206,13 +205,7 @@ fun TabContent(items: List<TMDbItem>, onClick: (TMDbItem) -> Unit) {
206205
),
207206
content = {
208207
items(items.size) { index ->
209-
TMDbContent(
210-
items[index],
211-
onClick,
212-
Modifier
213-
.height(320.dp)
214-
.padding(vertical = TMDb_8_dp),
215-
)
208+
TMDbContent(items[index], onClick)
216209
}
217210
},
218211
)

features/feature-paging/src/main/java/com/sample/tmdb/paging/PagingScreen.kt

Lines changed: 18 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import androidx.compose.foundation.layout.Arrangement
44
import androidx.compose.foundation.layout.Box
55
import androidx.compose.foundation.layout.PaddingValues
66
import androidx.compose.foundation.layout.fillMaxSize
7-
import androidx.compose.foundation.layout.height
87
import androidx.compose.foundation.layout.padding
98
import androidx.compose.foundation.layout.size
109
import androidx.compose.foundation.lazy.grid.GridCells
@@ -13,6 +12,7 @@ import androidx.compose.runtime.Composable
1312
import androidx.compose.runtime.getValue
1413
import androidx.compose.ui.Alignment
1514
import androidx.compose.ui.Modifier
15+
import androidx.compose.ui.res.stringResource
1616
import androidx.compose.ui.unit.dp
1717
import androidx.paging.LoadState
1818
import androidx.paging.compose.LazyPagingItems
@@ -22,6 +22,7 @@ import com.airbnb.lottie.compose.LottieCompositionSpec
2222
import com.airbnb.lottie.compose.LottieConstants
2323
import com.airbnb.lottie.compose.animateLottieCompositionAsState
2424
import com.airbnb.lottie.compose.rememberLottieComposition
25+
import com.sample.tmdb.common.R as commonR
2526
import com.sample.tmdb.common.model.TMDbItem
2627
import com.sample.tmdb.common.ui.Dimens.TMDb_8_dp
2728
import com.sample.tmdb.common.ui.component.ErrorScreen
@@ -42,11 +43,8 @@ fun <T : TMDbItem> PagingScreen(viewModel: BasePagingViewModel<T>, onClick: (TMD
4243
}
4344

4445
is LoadState.Error -> {
45-
val message =
46-
(lazyTMDbItems.loadState.refresh as? LoadState.Error)?.error?.message ?: return
47-
4846
ErrorScreen(
49-
message = message,
47+
message = getErrorMsg(lazyTMDbItems.loadState.refresh),
5048
modifier = Modifier.fillMaxSize(),
5149
refresh = { lazyTMDbItems.retry() },
5250
)
@@ -87,38 +85,22 @@ private fun <T : TMDbItem> LazyTMDbItemGrid(lazyTMDbItems: LazyPagingItems<T>, o
8785
items(lazyTMDbItems.itemCount) { index ->
8886
val tmdbItem = lazyTMDbItems[index]
8987
tmdbItem?.let {
90-
TMDbContent(
91-
it,
92-
onClick,
93-
Modifier
94-
.height(320.dp)
95-
.padding(vertical = TMDb_8_dp),
96-
)
88+
TMDbContent(it, onClick)
9789
}
9890
}
9991

100-
when (lazyTMDbItems.loadState.append) {
101-
is LoadState.Loading -> {
102-
fullSpanGridItem {
103-
LoadingRow(modifier = Modifier.padding(vertical = TMDb_8_dp))
104-
}
92+
if (lazyTMDbItems.loadState.append is LoadState.Loading) {
93+
fullSpanGridItem {
94+
LoadingRow(modifier = Modifier.padding(vertical = TMDb_8_dp))
10595
}
106-
107-
is LoadState.Error -> {
108-
val message =
109-
(lazyTMDbItems.loadState.append as? LoadState.Error)?.error?.message
110-
?: return@LazyVerticalGrid
111-
112-
fullSpanGridItem {
113-
ErrorScreen(
114-
message = message,
115-
modifier = Modifier.padding(vertical = TMDb_8_dp),
116-
refresh = { lazyTMDbItems.retry() },
117-
)
118-
}
96+
} else if (lazyTMDbItems.loadState.append is LoadState.Error) {
97+
fullSpanGridItem {
98+
ErrorScreen(
99+
message = getErrorMsg(lazyTMDbItems.loadState.append),
100+
modifier = Modifier.padding(vertical = TMDb_8_dp),
101+
refresh = { lazyTMDbItems.retry() },
102+
)
119103
}
120-
121-
else -> Unit
122104
}
123105
},
124106
)
@@ -142,3 +124,7 @@ private fun NoDataFoundAnimation(modifier: Modifier = Modifier) {
142124
modifier = modifier,
143125
)
144126
}
127+
128+
@Composable
129+
private fun getErrorMsg(loadState: LoadState) =
130+
(loadState as LoadState.Error).error.message ?: stringResource(commonR.string.failed_loading_msg)

0 commit comments

Comments
 (0)